Verilog 进击之路 - 夯实基础第三节之verilog主力团1

  本节重点梳作为主力团的modules,了解一个主力团下的具体配置,例如module name, port list, parameter, variable, declaration, dataflow statement, behavioral statement, instantiation, task, function等具体作战单位来配合实现一个团级的作战计划。由于涉及到具体的model细节,可能需要多次才可以完成团级module的描述。本节先简述通讯连,小规模突击队,主力炮兵连三部分。

  1:通讯连

  Ports: 提供与整个设计环境的交互接口,要做到高内聚低耦合,主力团与外界的通讯兵;一种internal to module的input 通讯兵,可以是reg/net型;一种external to the module的output通讯兵,输出后是net型;还有兼而有之的双向inout. 必须是net型.

  2:小规模突击队

  Gate level Model:

  Gate的类型 and nand or nor xor xnor and(OUT,IN1,IN2)

  buf的类型: buf ,not, bufif1,bufif0,notif1,notif0 nand n_gate[7:0](OUT,IN1,IN2)

  gate的时延 bufif0 #(rise_val,fall_var,turnoff_val) b1 (out,in,control),如果涉及到delay type,还可以分为min,max,typical and#(2:3:4,3:4:5,4:5:6)a3(out, i1,i2)

  Hierarchical path:  TOP.STIM.M1.Q 通过dot(.) 完成root module到every identifiers的循迹.

  3主力炮兵,指哪打哪

  Assign [drive strength] [delay] [list]

  Assign { c_out, sum[3:0] }=a[3:0]+b[3:0]+c_in;

  Dataflow 描述design 代替了primitive gates,涉及到表达式,操作数,和基础的dataflow model.

猜你喜欢

转载自www.cnblogs.com/dcj-study/p/12441552.html