commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r6814 - in gnuradio/branches/developers/matt/u2f/openc


From: matt
Subject: [Commit-gnuradio] r6814 - in gnuradio/branches/developers/matt/u2f/opencores/aemb: sim/verilog sim/verilog/CVS sw sw/CVS sw/c sw/c/CVS
Date: Sun, 4 Nov 2007 17:43:51 -0700 (MST)

Author: matt
Date: 2007-11-04 17:43:50 -0700 (Sun, 04 Nov 2007)
New Revision: 6814

Modified:
   gnuradio/branches/developers/matt/u2f/opencores/aemb/sim/verilog/CVS/Entries
   gnuradio/branches/developers/matt/u2f/opencores/aemb/sim/verilog/testbench.v
   gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/CVS/Entries
   gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/c/CVS/Entries
   gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/c/aeMB_testbench.c
   gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/gccrom
Log:
catching up with the latest


Modified: 
gnuradio/branches/developers/matt/u2f/opencores/aemb/sim/verilog/CVS/Entries
===================================================================
--- 
gnuradio/branches/developers/matt/u2f/opencores/aemb/sim/verilog/CVS/Entries    
    2007-11-05 00:43:29 UTC (rev 6813)
+++ 
gnuradio/branches/developers/matt/u2f/opencores/aemb/sim/verilog/CVS/Entries    
    2007-11-05 00:43:50 UTC (rev 6814)
@@ -1,3 +1,4 @@
 /utestbench.v/1.1/Fri Apr 13 13:02:34 2007//
-/testbench.v/1.5/Thu May 31 04:09:14 2007//
+/edk32.v/1.2/Fri Nov  2 19:16:10 2007//
+/testbench.v/1.6/Sat Nov  3 19:53:44 2007//
 D

Modified: 
gnuradio/branches/developers/matt/u2f/opencores/aemb/sim/verilog/testbench.v
===================================================================
--- 
gnuradio/branches/developers/matt/u2f/opencores/aemb/sim/verilog/testbench.v    
    2007-11-05 00:43:29 UTC (rev 6813)
+++ 
gnuradio/branches/developers/matt/u2f/opencores/aemb/sim/verilog/testbench.v    
    2007-11-05 00:43:50 UTC (rev 6814)
@@ -1,5 +1,5 @@
 /*
- * $Id: testbench.v,v 1.5 2007/05/30 18:44:45 sybreon Exp $
+ * $Id: testbench.v,v 1.6 2007/10/22 19:13:46 sybreon Exp $
  * 
  * AEMB Generic Testbench
  * Copyright (C) 2004-2007 Shawn Tan Ser Ngiap <address@hidden>
@@ -24,6 +24,9 @@
  *
  * HISTORY
  * $Log: testbench.v,v $
+ * Revision 1.6  2007/10/22 19:13:46  sybreon
+ * Made some changes to the interrupt control. In some cases, the interrupt 
logic waits forever and doesn't execute. Bug was discovered by M. Ettus.
+ *
  * Revision 1.5  2007/05/30 18:44:45  sybreon
  * Added interrupt support.
  *
@@ -56,12 +59,12 @@
    always #5 sys_clk_i = ~sys_clk_i;   
 
    initial begin
-      //$dumpfile("dump.vcd");
-      //$dumpvars(1,dut);
+      $dumpfile("dump.vcd");
+      $dumpvars(1,dut);
    end
    
    initial begin
-      inttime = ($random % 143 * 7) + 2000;      
+      inttime = ($random % 143 * 7) + 3210;      
       svc = 0;      
       sys_clk_i = 1;
       sys_rst_i = 0;
@@ -134,7 +137,13 @@
 
       // Time
       $write("\nT: ",($stime / 10));
-            
+
+      $writeh("\t(",dut.control.rFSM,")", dut.rATOM);      
+      $writeh("\t [",{dut.regfile.rPC_[13:2],2'd0},"]",{dut.frun,dut.drun});
+
+      $writeh("\t {",dut.aslu.rMSR_C,",",dut.aslu.rMSR_IE,",",dut.rMXALU,"}"); 
     
+      $writeo(dut.rOPC);
+      
       // Data Monitors
       if (iwb_stb_o & iwb_ack_i)
        $writeh("\t @",iwb_adr_o,":",iwb_dat_i);      
@@ -157,9 +166,9 @@
       if (dwb_we_o & (dwb_dat_o == "RTNI")) begin
         sys_int_i = 0;  
       end      
-      if (dut.control.rFSM == 2'o1) begin
+      if (dut.control.rFSM[2]) begin
         $writeh("\tINTR: ",(($stime-inttime)/10), " cycles");
-        inttime = ($random % 181 * 11) + $stime + 5000;         
+        inttime = ($random % 181 * 11) + $stime + 5430;         
         svc = 1;
       end
 
@@ -178,7 +187,7 @@
    
    aeMB_core #(ISIZ,DSIZ)
      dut (
-         .sys_int_i(sys_int_i),.sys_exc_i(sys_exc_i),
+         .sys_int_i(sys_int_i),//.sys_exc_i(sys_exc_i),
          .dwb_ack_i(dwb_ack_i),.dwb_stb_o(dwb_stb_o),.dwb_adr_o(dwb_adr_o),
          .dwb_dat_o(dwb_dat_o),.dwb_dat_i(dwb_dat_i),.dwb_we_o(dwb_we_o),
          .dwb_sel_o(dwb_sel_o),

Modified: gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/CVS/Entries
===================================================================
--- gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/CVS/Entries 
2007-11-05 00:43:29 UTC (rev 6813)
+++ gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/CVS/Entries 
2007-11-05 00:43:50 UTC (rev 6814)
@@ -1,2 +1,2 @@
 D/c////
-/gccrom/1.4/Mon Apr 30 17:31:54 2007//
+/gccrom/1.6/Sat Nov  3 19:53:44 2007//

Modified: gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/c/CVS/Entries
===================================================================
--- gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/c/CVS/Entries       
2007-11-05 00:43:29 UTC (rev 6813)
+++ gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/c/CVS/Entries       
2007-11-05 00:43:50 UTC (rev 6814)
@@ -1,2 +1,2 @@
-/aeMB_testbench.c/1.6/Mon Apr 30 17:31:54 2007//
+/aeMB_testbench.c/1.8/Sat Nov  3 19:53:44 2007//
 D

Modified: 
gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/c/aeMB_testbench.c
===================================================================
--- gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/c/aeMB_testbench.c  
2007-11-05 00:43:29 UTC (rev 6813)
+++ gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/c/aeMB_testbench.c  
2007-11-05 00:43:50 UTC (rev 6814)
@@ -1,5 +1,5 @@
 /*
- * $Id: aeMB_testbench.c,v 1.6 2007/04/30 15:57:10 sybreon Exp $
+ * $Id: aeMB_testbench.c,v 1.8 2007/11/03 08:40:18 sybreon Exp $
  * 
  * AEMB Function Verification C Testbench
  * Copyright (C) 2004-2007 Shawn Tan Ser Ngiap <address@hidden>
@@ -25,6 +25,12 @@
  * 
  * HISTORY
  * $Log: aeMB_testbench.c,v $
+ * Revision 1.8  2007/11/03 08:40:18  sybreon
+ * Minor code cleanup.
+ *
+ * Revision 1.7  2007/11/02 18:32:19  sybreon
+ * Enable MSR_IE with software.
+ *
  * Revision 1.6  2007/04/30 15:57:10  sybreon
  * Removed byte acrobatics.
  *
@@ -53,18 +59,35 @@
    - Pointer addressing
    - Interrupt handling
  */
-void int_call_func (); // __attribute__((save_volatiles));
-void int_handler_func () __attribute__ ((interrupt_handler));
+// void int_service (void) __attribute__((save_volatiles));
+void int_handler (void) __attribute__ ((interrupt_handler));
 
-void int_handler_func () {
-  int_call_func();
+void int_enable()
+{
+  asm ("mfs r14, rmsr");
+  asm ("ori r14, r14, 0x0002");
+  asm ("mts rmsr, r14");
 }
 
-void int_call_func () {
-  int* pio = (int*)0xFFFFFFFF;
+void int_disable()
+{
+  asm ("mfs r14, rmsr");
+  asm ("andi r14, r14, 0x00FD");
+  asm ("mts rmsr, r14");
+}
+
+void int_service() 
+{
+  int* pio = (int*)0xFFFFFFFC;
   *pio = 0x52544E49; // "INTR"
 }
 
+void int_handler()
+{
+  int_service();
+}
+
+
 /**
    FIBONACCI TEST
    http://en.literateprograms.org/Fibonacci_numbers_(C)
@@ -251,14 +274,18 @@
    MPI port that is checked by the testbench.
  */
 
+
 int main () 
 {
   // Message Passing Port
   int* mpi = (int*)0xFFFFFFFF;
-
+  
   // Number of each test to run
-  int max = 3;
+  int max = 10;
 
+  // Enable Global Interrupts
+  int_enable();
+
   // Fibonacci Test
   if (fib_test(max) == -1) { *mpi = 0x4641494C; }
 
@@ -268,6 +295,8 @@
   // Newton-Rhapson Test
   if (newton_test(max) == -1) { *mpi = 0x4641494C; }
   
+  // Disable Global Interrupts
+  int_disable();
   // ALL PASSED
   return 0;
 }

Modified: gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/gccrom
===================================================================
--- gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/gccrom      
2007-11-05 00:43:29 UTC (rev 6813)
+++ gnuradio/branches/developers/matt/u2f/opencores/aemb/sw/gccrom      
2007-11-05 00:43:50 UTC (rev 6814)
@@ -1,6 +1,14 @@
 #!/bin/sh
-# $Id: gccrom,v 1.4 2007/04/30 15:57:31 sybreon Exp $
+# $Id: gccrom,v 1.6 2007/11/02 03:25:46 sybreon Exp $
 # $Log: gccrom,v $
+# Revision 1.6  2007/11/02 03:25:46  sybreon
+# New EDK 3.2 compatible design with optional barrel-shifter and multiplier.
+# Fixed various minor data hazard bugs.
+# Code compatible with -O0/1/2/3/s generated code.
+#
+# Revision 1.5  2007/10/22 19:14:38  sybreon
+# Recommended to compile code with -O2/3/s
+#
 # Revision 1.4  2007/04/30 15:57:31  sybreon
 # Modified compilation sequence.
 #
@@ -14,10 +22,10 @@
 # initial import
 #
 #mb-gcc -g -mxl-soft-div -mxl-soft-mul -msoft-float -mno-clearbss 
-msmall-divides -mno-memcpy -mno-xl-gp-opt -o rom.o $@ && \
-mb-gcc -g -mxl-soft-div -mxl-soft-mul -msoft-float -o rom.o $@ && \
+mb-gcc -g -mstats -mxl-soft-div -mxl-soft-float -o rom.o $@ && \
 #mb-run -v rom.o 2> rom.run && \
 mb-objcopy -O binary rom.o rom.bin && \
 hexdump -v -e'1/4 "%.8X\n"' rom.bin > ../sim/aeMB.rom && \
-mb-objdump -DSCs rom.o > rom.dump && \
+mb-objdump -DSC rom.o > rom.dump && \
 rm rom.bin && \
 echo "ROM generated"





reply via email to

[Prev in Thread] Current Thread [Next in Thread]