Fsm Serial Adder

Posted on -
Active2 years, 8 months ago
  1. Moore Type Fsm Serial Adder

Design of Serial adderMoore Machine Revathi S. Unsubscribe from Revathi S? From a Finite State Machine to a Circuit - Duration: 10:19. Abelardo Pardo 114,344 views. Serial Adder: Serial adder consists of the shift registers and the adder FSM. In serial adder three shift registers are used for the inputs A and B and the output sum. The shift registers are loaded with parallel data when the circuit is reset.

Design is a serial adder. It takes 8-bit inputs A and B and adds them in a serial fashion when the goinput is set to 1. The result of the operation is stored in a 9-bit sum register, The block diagram is attached. I am using Quartus II 13.0sp1 (64-bit) Web Edition.

Serial Adder using Mealy and Moore FSM in VHDL: Mealy type FSM for serial adder, Moore type FSM for serial adder.

Errors:Error (10170): Verilog HDL syntax error at LAB9b.v(56) near text 'â'; expecting ':', or ','i have not written this text 'â' anywhere in the code but still it is sowing me syntax error near 'â' .??

Following is the Code written :-

Greg
13.9k5 gold badges37 silver badges54 bronze badges
Umer Khayyam SattiUmer Khayyam Satti

1 Answer

Moore Type Fsm Serial Adder

is not ' (notice the shape difference). Verilog works with the apostrophe character (', ASCII 0x27). Your is likely an extended ASCII character. There is also a » character, which I believe should be !.

I'm guessing you wrote your code in word editor (ex Microsoft Word, LibreOffice Writer, Apple iWork, etc). These kinds of editors tend to swap ' for while you type because it is more visually appealing for humans. Email clients and some messaging apps tend to do this too.

You should always write your code in a plain texted editor or an editor intended for writing code. Emacs and Vim are popular editors for writing code; syntax highlighting plugins are available for both. An IDE, like Eclipse, is another option. Notepad does work as well.

I also noticed you used and assign statement on the reg type temp. This is not legal in verilog. assign statements can only be done on net types (e.g. wire). You may have other compiling errors that will show up after fixing and », the error message will likely be more helpful.
The compiler will not flag it, but recommend coding style is to use blocking assignments (=) inside combination block (always@(*)), not non-blocking (<=).

PING-PONG IS A GLOBAL PHENOMENON (BUT IT'S MOST POPULAR IN ASIA).In the early 20th century, the ping-pong craze swept across Central Europe. Lems ping pong box rarity.

GregFsm Serial AdderGreg
13.9k5 gold badges37 silver badges54 bronze badges
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.

Not the answer you're looking for? Browse other questions tagged verilogfsmshift-register or ask your own question.