![]() |
|
![]() |
|
Answers Database
NGDBUILD (EDIF2NGD): How does EDIF2NGD handle embedded ranged strings in array names?
Record #5416
Product Family: Software EDIF2NGD 1.5 will attempt to match the array name to the following
array_name pattern:
Consider these 3 EDIF snippets: Ex 1: (port (array (rename q_out "Q_OUT[9:0]") 10) (direction OUTPUT)) Ex 2: (port (array (rename q_out "Q_OUT<9:0>") 10) (direction OUTPUT)) Ex 3: (port (array (rename q_out "Q_OUT(9:0)") 10) (direction OUTPUT)) EDIF2NGD will handle array constructs with embedded ranges. Once the bus index has been determined, the scalar port or net name will be constructed as follows: base_name '(' index ')' This bus-expansion syntax is one of the standard ones recognized by NGDBUILD for Xilinx primitives that are defined to have bussed ports. (Currently, only the Virtex block RAM primitives are so defined.) It is also recognized by the Xilinx HDL writers when reconstructing bussed ports on user entities. After bus-expansion, all 3 of our examples will have the pattern, base_name '(' index ')' The original bus-notation will not be retained. Note that in M2.1, many of these issues should go away, because NGDBUILD will know how to juggle the delimiters to make pins match. End of Record #5416 - Last Modified: 01/18/99 19:21 |
| For the latest news, design tips, and patch information on the Xilinx design environment, check out the Technical Tips! |