This is an old revision of the document!
HDLs (Hardware Description Languages) like SystemVerilog can be difficult to understand. To make SystemVerilog code more readable and maintainable, you are required to follow coding standards. These standards are explained below. Each lab will be graded against this coding standard.
FourFunctions, the filename will be FourFunctions.sv./***************************************************************************
*
* Module: <module Name>
*
* Author: <Your Name>
* Class: <Class, Section, Semester> - ECEN 220, Section 1, Fall 2018
* Date: <Date file was created>
*
* Description: <Provide a brief description of what this SystemVerilog file does>
*
*
****************************************************************************/
`default_nettype none macro directive.input wire logicoutput logiclogicreg, and var are not allowed to be used, and wire can only be used for inputs as described above.clrTimer instead of n7). _n suffix for active low signals (eg. write_n).logic nextState = 0;. Rather, signals will be declared as in logic nextState;. always_ff block and every always_comb block will be preceded by a comment describing its function and how it should operate. clrTimer) then a comment describing may not be needed. Otherwise, all signal declarations will have an associated descriptive comment. always_ff block is the <= operator. The only assignment operator allowed in assign statements and always_comb blocks is the = operator. always_comb block must begin by assigning default values to all signals being driven in the block. always_ff block will include functionality allowing the registers within the block to be set to known values via the assertion of a clr or load signal. always_comb for the combined IFL/OFL, and an always_ff for the state register.