Back to TOC
Prev: Day6
Transaction-Level Verilog (TL-Verilog) is an extension to SystemVerilog that supports a new design methodology, called transaction-level design. A transaction, in this methodology, is an entity that moves through structures like pipelines, arbiters, and queues. A transaction might be a machine instruction, a flit of a packet, or a memory read/write. Transaction logic, like packet header decode or instruction execution, that operates on the transaction can be placed anywhere along the transaction’s flow. Tools produce the logic to carry signals through their flows to stitch the transaction logic.
Makerchip is a free online environment provided by Redwood EDA for developing integrated circuits. The online platform can be used to code, compile, simulate and debug Verilog designs from a web browser. In addition to Verilog and synthesizable SystemVerilog, the platform provides support for Transaction-Level Verilog (TL-Verilog).
The Makerchip IDE also provides various tutorials and examples (inside Learn menu in the main window) to help learn the new concepts and constructs in TL-Verilog quickly.
References:
- https://www.redwoodeda.com/tl-verilog
- https://www.tl-x.org
- Top-Down Transaction-Level Design with TL-Verilog
- Makerchip IDE
- Makerchip IDE Documentation
In this session, we will learn the concepts and syntax of TL-Verilog by implementing basic combinational and sequential logic using the same in Makerchip.
Implemented basic combinational logic elements and circuits like gates, muxes, vector adder, combinational calculator etc. using TL-Verilog in Makerchip.
-
Fibonacci Series
-
Free-running Counter (starts from 1 and increments by 1 every cycle)
-
Sequential Calculator
-
Pythagorus Theorem with 3-stage pipeline
-
Example showing the ease of pipelining/ retiming in TL-Verilog
-
Sequential Calculator with counter
-
2-Cycle Sequential Calculator
Using validity makes the design cleaner. Debugging and error checking also becomes easier.
Prev: Day6