Estoy aprendiendo VHDL y estoy usando las tablas Lattice. Quiero saber como declarar un GPIO. Encontré el siguiente bloque de código en el ejemplo de la carpeta de software de diamante. Es el archivo ".lpf" y creo que es el lugar donde se declaran los pines. ¿Alguien puede explicar simplemente lo que significan las líneas:
BLOCK RESETPATHS ;
BLOCK ASYNCPATHS ;
BLOCK JTAGPATHS ;
IOBUF ALLPORTS IO_TYPE=LVCMOS33 ;
LOCATE COMP "seg_1" SITE "V6" ;
LOCATE COMP "seg_2" SITE "U7" ;
LOCATE COMP "seg_3" SITE "Y6" ;
LOCATE COMP "seg_4" SITE "AA6" ;
LOCATE COMP "seg_5" SITE "U8" ;
LOCATE COMP "seg_6" SITE "T8" ;
LOCATE COMP "seg_7" SITE "AA5" ;
LOCATE COMP "seg_8" SITE "AB4" ;
LOCATE COMP "clk" SITE "L5" ;
IOBUF PORT "seg_1" IO_TYPE=LVCMOS33 TERMINATEVTT=OFF ;
LOCATE COMP "reset" SITE "J7" ;
IOBUF PORT "reset" IO_TYPE=LVCMOS33 ;
LOCATE COMP "direction" SITE "J6" ;
LOCATE COMP "LOCK" SITE "W5" ;
LOCATE COMP "seg_9" SITE "Y20" ;
LOCATE COMP "seg_10" SITE "AA21" ;
LOCATE COMP "seg_11" SITE "U18" ;
LOCATE COMP "seg_12" SITE "U19" ;
LOCATE COMP "seg_13" SITE "W19" ;
LOCATE COMP "seg_14" SITE "V19" ;
LOCATE COMP "seg_15" SITE "AB20" ;
LOCATE COMP "seg_16" SITE "AA20" ;
corrígeme si me equivoco, entonces Las primeras 3 líneas bloquean al usuario para usar los pines que se usan en JTAG & ¿Restablecer?
Una línea como esta:
LOCATE COMP "seg_16" SITE "AA20" ;
significa para el sintetizador que la variable seg_16 de los archivos VHDL está vinculada al pin "real" de la placa.
Finalmente, no tengo idea de lo que significa la palabra clave IOBUF. Entonces, ¿entendí algo bien o simplemente me equivoco?