De momento lo que tengo hecho son chorradillas con el LED RGB. Espero poder poner cosas más interesantes.
https://github.com/mcleod-ideafix/pano_logic
Cores que voy poniendo en mi github
Moderador: antoniovillena
- mcleod_ideafix
- Site Admin
- Mensajes: 80
- Registrado: 14 Ago 2018, 01:15
- Subcritical
- Spartan 3
- Mensajes: 225
- Registrado: 24 Ago 2018, 14:52
Re: Cores que voy poniendo en mi github
Buenas mcleod_ideafix he añadido para el test2 del fantasma soporte para las familia Terasic DE2.
Modificado el fichero de cabecera la versión comprobada es la de Altera DE2_70.
El dac usado es de 30bit de color, un equivalente de "2 us dollars" compatible con el que trae la panologic.
https://www.analog.com/media/en/technic ... dv7123.pdf
Fuentes: Lo más importante ha sido modificar la generación de reloj para todo el sistema en las lineas:
Como ejemplo para la generación de los qsf en la Altera Terasic DE2 he seguido esta asignación de pines:
http://www.terasic.com.tw/attachment/ar ... _Table.pdf
Manuales:
DE2 ORIGINAL:
http://hamblen.ece.gatech.edu/DE2/DE2%2 ... Manual.pdf
DE2 70:
https://www.terasic.com.tw/cgi-bin/page ... 6&PartNo=4
DE2 115:
ftp://ftp.intel.com/Pub/fpgaup/pub/Inte ... Manual.pdf
Es un ejemplo muy didáctico para portar, como se ve en una placa terasic DE2_70.
Modificado el fichero de cabecera la versión comprobada es la de Altera DE2_70.
El dac usado es de 30bit de color, un equivalente de "2 us dollars" compatible con el que trae la panologic.
https://www.analog.com/media/en/technic ... dv7123.pdf
Fuentes: Lo más importante ha sido modificar la generación de reloj para todo el sistema en las lineas:
Código: Seleccionar todo
//osc_clk es 50mhz , clk1 es 25mhz.
reg clk1;
wire clkvideo;
always@(posedge osc_clk)
clk1<=~clk1;
assign vo_clk = clk1;
assign clkvideo = clk1;
http://www.terasic.com.tw/attachment/ar ... _Table.pdf
Manuales:
DE2 ORIGINAL:
http://hamblen.ece.gatech.edu/DE2/DE2%2 ... Manual.pdf
DE2 70:
https://www.terasic.com.tw/cgi-bin/page ... 6&PartNo=4
DE2 115:
ftp://ftp.intel.com/Pub/fpgaup/pub/Inte ... Manual.pdf
Es un ejemplo muy didáctico para portar, como se ve en una placa terasic DE2_70.
- Subcritical
- Spartan 3
- Mensajes: 225
- Registrado: 24 Ago 2018, 14:52
Re: Cores que voy poniendo en mi github
Usando primitiva altpll para la versión de cyclone IV en la generación de relojes del unamiga.
Fichero para poder sintetizar dicha demo en Unamiga:
Ver porqué sale tan amarillo el fondo:
Código: Seleccionar todo
// Metodo mediante primitiva altpll para generar una señal de reloj de 25 MHz a partir del reloj de 50 MHz del unamiga
// vo_clk = osc_clk / 2 = 25 MHz
wire clkvideo;
relojes reloj25mhz (
.inclk0(osc_clk),
.c0(vo_clk),
.c1(clkvideo)
);
- Subcritical
- Spartan 3
- Mensajes: 225
- Registrado: 24 Ago 2018, 14:52
Re: Cores que voy poniendo en mi github
Intentando usar la primitiva altpll, en un cyclone II obtengo esta salida mientras que en cyclone 4 sintetiza:
¿Cual sería la primitiva a usar si existe para la familia cyclone II?
Código: Seleccionar todo
Error (272006): MGL_INTERNAL_ERROR: Port object altpll|clk of width 5 is being assigned the port altpll|stratixii_pll inst pll1|clk of width 3 which is illegal, as port widths dont match nor are multiples. CAUSE : The port widths are mismatched in the mentioned assignment. The port widths of the connected ports should match or the LHS port width should be a multiple of the RHS port width. ACTION : Check the port widths of the connected ports. Logical operation results in a port width equal to the larger of the two ports and concatenation results in a port width equal to the sum of the individual port widths. Double check for such cases.