- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What do the symbols pipe ( | ), colon ( : ), and underscore ( _ ) mean in the Quartus II naming mechanism. When I open the node window I am flooded with signals that have long names and they seem to contain these symbols within them. What do they mean in this case?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Probably nothing at all.
They appear in generated names when two items are concatenated, using characters that don't appear elsewhere can avoid issues with non-unique names. Long names are typical of any system that uses software to generate 'code'. In the past I've seen a C compiler warn "variable names are not unique in their first 256 characters" !- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Pipe separates hierarchies. Each hierarchy is represented by the module/entity and the instance, separated by a colon. So you might have something like:
top|rf:rf_A|filter:filt_inst|free_count[3] So top instantiates an entity/instance called rf with instantiation rf_A. Then filter is instantiated, and within that is a register called free_count, and this is bit 3. The underscores are added by the user, but can also be added during synthesis if something gets resynthesized(although I think Quartus often adds ~, i.e. it might be free_count~RESYNTH323432 as a new name if it gets resynthesized. It depends.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for the response, but could you elaborate a tiny bit more on the meaning of the ~ symbol?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It doesn't directly mean anything. Synthesis manipulates your logic, and hence has to give it a different name so the user doesn't confuse it's behavior with a logical name in their design. Users generally don't add ~ in their names, but synthesis tools do(I believe Synplify does this too). So it's just a way to give it a different name.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page