# Convention for inverted signal

Is there a standard convention for marking an inverted signal using only text? The package currently being used does not support having a bar over the signal in all instances.

IE: NOT_Reset or Reset_Bar etc? when you can't use $$\ \overline{Reset}\$$

• There are a number of methods used; one is n<signal name> or <signal name>_n. Another in common use is the use of a hash <signal name>#. The important thing is to be consistent. – Peter Smith Nov 22 '19 at 14:47
• What do you mean by "the package being used"? – Curd Nov 22 '19 at 14:53
• @Curd the documentation software for schematics being used. – Tyler Nov 22 '19 at 15:08
• I believe the most common conventions are "/", "#" and "!" prefixes – Maple Nov 22 '19 at 15:55
• Not an answer because it's certainly not the convention, but I have also seen (AL), usually with some explanation on the side AL = active low. – AndreKR Nov 23 '19 at 7:33

Often a tilde ~ is used to indicate negation (just like the bitwise NOT-operator in the C-programing langage) if only text without special formatting, like overbars, can be used.

E.g. ~reset

I often use "/RESET" using the forward slash to indicate active low

I use NOT_ because it's clear what it is if I forget the convention or whoever is reading it doesn't know the conventions. But I am also very verbose in my labeling. Principle of least astonishment.

Another reason is that it's difficult to miss when reading and difficult to forget when typing. I never liked things like a single character prefix (and a suffix is even worse) because it's way too easy to gloss over when reading it and interpret it as an uninverted signal, or when typing it out too (especially if it appears in code and you have the uninverted variant also floating around)

• I think this is the best choice. I avoid characters that are "special" in any computer language or operating system, such as '/'. – Elliot Alderson Nov 22 '19 at 17:15

There are many languages and logical forms of expression. Since schematics are also "logic diagrams" , they too express the standards adopted by the international or corporate community.

They must also beware of the limitations in character set and ability to draw vectors such as "overline" unlike "underline" which is available in some.

From a historical point of view for documentation on signals used in both limited character sets for say "Theory of Operation" and schematic drawings, the most common symbol I have seen since the early 80's was the ! symbol placed either before or more often after the word to indicate "Negation" or the active state is low.

e.g. reset! is active low. Similarily I have also seen reset~ , /Reset

A or A! are the binary states for normal and inverted signal or in Boolean logic A=1 and A!=0

! is also called the Bang key .

Here are all the software variants which includes examples of "negation" may not be relevant to schematics but may be familiar that use extended character sets.

I usually use a preceding exclamation mark:

!RESET


The main reason for this is I can easily denote signals like this:

UP/!DOWN


I've seen all kinds of conventions:

• RESET-
• RESET_L
• nRESET

Just pick one and use it consistently.

• #RESET is also seen – crasic Nov 23 '19 at 0:31
• @crasic: I wasn't trying to create an exhaustive list. The real answer is the last line. – Dave Tweed Nov 23 '19 at 1:14

Check you coding environment documentation to determine if you need to code active-low signals a certain way.

I typically code HDL using the convention reset_n or resetn. However, one development suite I use regularly will sometimes get confused if I don't use -only- resetn; it does not interpret reset_n as one might expect during its parsing and autogeneration stages.