Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.
Like I said it could be considered a bug in the script...
I've seen this kind of port generation in both Xilinx and Altera produce code. I really believe it just a way for them to simplify the script so it can generate various widths for signals. Like the byte write enables, that change width depending on the data width of the ram.
I've seen it recently on a MIG core that has output wire [BW_WIDTH-1:0] bw_n;, where BW_WIDTH is 1
If the script writer is sloppy then I can easily believe it was done on the wea too.
I think it's sloppy work. The tool shouldn't present the user with some 'abnormal' output just to ease the script writer's job. To add a bunch of if statements in order to generate proper output would seem to be the right way to go. It's not as if the tool would run noticeably slower.
It's a one-element vector. I've seen this used before, although it's not very common.
1. Could be used for future expansion
2. If I/O nets are defined in a constraint file as an vector and only one element is needed, that's how it would be written.
NET "WEA<2>" LOC = "A11" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ;
NET "WEA<1>" LOC = "B11" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ;
NET "WEA<0>" LOC = "C11" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ;