add 32-pin output-enable to flexbus, rename get/put interfaces
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 27 Jul 2018 06:25:42 +0000 (07:25 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 27 Jul 2018 06:25:42 +0000 (07:25 +0100)
src/peripherals/flexbus/FlexBus_Types.bsv

index 9e3533e40df248ba780b3f1c95597a4d7451ba98..f46fae5d90888936d2adad6cac0d356940cc2cc6 100644 (file)
@@ -67,19 +67,20 @@ interface FlexBus_Master_IFC;
    // FlexBus External Signals
   
    // AD inout bus separate for now in BSV
-   interface Get#(Bit#(32)) AD;      // out
-   interface Put#(Bit#(32)) din;     // in
+   interface Get#(Bit#(32)) m_AD;      // out
+   interface Put#(Bit#(32)) m_din;     // in
+   interface Get#(Bit#(32)) m_OE32n;   // out 32-bits, same as OEn
 
-   interface Get#(Bit#(1))  R_Wn;    // out
-   interface Get#(Bit#(2))  TSIZ;    // out
+   interface Get#(Bit#(1))  m_R_Wn;    // out
+   interface Get#(Bit#(2))  m_TSIZ;    // out
 
-   interface Get#(Bit#(6))  FBCSn;   // out
-   interface Get#(Bit#(4))  BWEn; // out
-   interface Get#(Bit#(1))  TBSTn;   // out
-   interface Get#(Bit#(1))  OEn;     // out
+   interface Get#(Bit#(6))  m_FBCSn;   // out
+   interface Get#(Bit#(4))  m_BWEn; // out
+   interface Get#(Bit#(1))  m_TBSTn;   // out
+   interface Get#(Bit#(1))  m_OEn;     // out
 
-   interface Get#(Bit#(1))  ALE;     // out
-   interface Put#(Bit#(1))  tAn;     // in
+   interface Get#(Bit#(1))  m_ALE;     // out
+   interface Put#(Bit#(1))  m_tAn;     // in
 
 endinterface: FlexBus_Master_IFC
 
@@ -1073,61 +1074,71 @@ module mkAXI4_Slave_to_FlexBus_Master_Xactor
 interface flexbus_side = interface FlexBus_Master_IFC;
            //interface io_AD_master = tri_AD_out.io;
         
-    interface tAn = interface Put
+    interface m_tAn = interface Put
         method Action put(Bit#(1) in) if(c_TAn[0] matches tagged Invalid);
             c_TAn[0] <= tagged Valid in;
         endmethod
     endinterface;
 
-    interface din = interface Put
+    interface m_din = interface Put
         method Action put(Bit#(32) in) if(c_din[0] matches tagged Invalid);
             c_din[0] <= tagged Valid in;
         endmethod
     endinterface;
 
-    interface AD = interface Get
+    interface m_AD = interface Get
         method ActionValue#(Bit#(32)) get;
             return r_AD;
         endmethod
     endinterface;
 
-    interface R_Wn = interface Get
+    interface m_R_Wn = interface Get
         method ActionValue#(Bit#(1)) get;
             return r_R_Wn;
         endmethod
     endinterface;
 
-    interface TSIZ = interface Get
+    interface m_TSIZ = interface Get
         method ActionValue#(Bit#(2)) get;
             return r_TSIZ;
         endmethod
     endinterface;
 
-    interface FBCSn = interface Get
+    interface m_FBCSn = interface Get
         method ActionValue#(Bit#(6)) get;
             return r_FBCSn;
         endmethod
     endinterface;
 
-    interface BWEn = interface Get
+    interface m_BWEn = interface Get
         method ActionValue#(Bit#(4)) get;
             return r_BE_BWEn;
         endmethod
     endinterface;
 
-    interface TBSTn = interface Get
+    interface m_TBSTn = interface Get
         method ActionValue#(Bit#(1)) get;
             return r_TBSTn;
         endmethod
     endinterface;
 
-    interface OEn = interface Get
+    interface m_OE32n = interface Get
+        method ActionValue#(Bit#(32)) get;
+            Bit#(32) ten;
+            for (int i=0; i<32; i=i+1) begin
+              ten[i] = r_OEn;
+            end
+            return ten;
+        endmethod
+    endinterface;
+
+    interface m_OEn = interface Get
         method ActionValue#(Bit#(1)) get;
             return r_OEn;
         endmethod
     endinterface;
 
-    interface ALE = interface Get
+    interface m_ALE = interface Get
         method ActionValue#(Bit#(1)) get;
             return r_ALE;
         endmethod