Learning BSV‎ > ‎Attributes‎ > ‎

Ready and Enable Renaming Attributes

Default Naming

READY: RDY_methodname ENABLE: EN_methodname

Attribute Syntax

(* ready = "readyname", enable = "enablename" *)
method type methodname;

or

(* ready = "readyname" *)
(* enable = "enablename" *)
method type methodname;

where readyname is a string specifying the complete name for the Ready signal and enablename is a string specifying the complete name for the Enable signal. The attributes can be provided together on a single line or on separate lines; one or both may be provided. The line(s) containing the renaming attribute(s) must immediately preceed the method declaration.

BSV Example

interface Mult_ifc; 
method int result ();
(* ready = "start_READY", enable = "GO" *)
method Action start(int x, int y);
endinterface: Mult_ifc

Generated Verilog

// value method result
output [31 : 0] result;
output RDY_result; // default ready name (no attribute specified)
// action method start
input [31 : 0] start_x;
input [31 : 0] start_y;
input GO; // enable name using attribute
output start_READY; // ready name using attribute
Comments