Delete dmi_wrapper.scala
This commit is contained in:
		
							parent
							
								
									969f499ec3
								
							
						
					
					
						commit
						6600d3503b
					
				| 
						 | 
				
			
			@ -1,65 +0,0 @@
 | 
			
		|||
package dmi
 | 
			
		||||
import chisel3._
 | 
			
		||||
import scala.collection._
 | 
			
		||||
import chisel3.util._
 | 
			
		||||
import include._
 | 
			
		||||
import lib._
 | 
			
		||||
 | 
			
		||||
class dmi_wrapper extends Module with el2_lib with RequireAsyncReset {
 | 
			
		||||
  val io = IO(new Bundle{
 | 
			
		||||
    // JTAG signals
 | 
			
		||||
    val trst_n      = Input(AsyncReset())
 | 
			
		||||
    val tck       = Input(Clock())             // JTAG clock
 | 
			
		||||
    val tms       =Input(UInt(1.W))             // Test mode select
 | 
			
		||||
    val tdi       =Input(UInt(1.W))             // Test Data Input
 | 
			
		||||
    val tdo       =Output(UInt(1.W))          // Test Data Output
 | 
			
		||||
    val tdoEnable =Output(UInt(1.W))           // Test Data Output enable
 | 
			
		||||
 | 
			
		||||
    // Processor Signals
 | 
			
		||||
    // val              core_rst_n =Input(UInt(1.W))          // Core reset
 | 
			
		||||
    //  val              core_clk   =Input(UInt(1.W))         // Core clock
 | 
			
		||||
    val jtag_id        = Input(UInt(32.W))         // JTAG ID
 | 
			
		||||
    val rd_data        = Input(UInt(32.W))         // 32 bit Read data from  Processor
 | 
			
		||||
    val reg_wr_data    = Output(UInt(32.W))      // 32 bit Write data to Processor
 | 
			
		||||
    val reg_wr_addr    = Output(UInt(7.W))       // 7 bit reg address to Processor
 | 
			
		||||
    val reg_en         = Output(UInt(1.W))      // 1 bit  Read enable to Processor
 | 
			
		||||
    val reg_wr_en      = Output(UInt(1.W))      // 1 bit  Write enable to Processor
 | 
			
		||||
    val dmi_hard_reset = Output(UInt(1.W))
 | 
			
		||||
  })
 | 
			
		||||
  //Wire Declaration
 | 
			
		||||
  val rd_en    = WireInit(0.U(1.W))
 | 
			
		||||
  val wr_en    = WireInit(0.U(1.W))
 | 
			
		||||
  val dmireset = WireInit(0.U(1.W))
 | 
			
		||||
 | 
			
		||||
  //jtag_tap instantiation
 | 
			
		||||
  val  i_jtag_tap = Module(new rvjtag_tap())
 | 
			
		||||
  i_jtag_tap.io.trst      := io.trst_n                      // dedicated JTAG TRST (active low) pad signal or asynchronous active low power on reset
 | 
			
		||||
  i_jtag_tap.io.tck       := io.tck                          // dedicated JTAG TCK pad signal
 | 
			
		||||
  i_jtag_tap.io.tms       := io.tms                          // dedicated JTAG TMS pad signal
 | 
			
		||||
  i_jtag_tap.io.tdi       := io.tdi                          // dedicated JTAG TDI pad signal
 | 
			
		||||
  io.tdo                  := i_jtag_tap.io.tdo                          // dedicated JTAG TDO pad signal
 | 
			
		||||
  io.tdoEnable            := i_jtag_tap.io.tdoEnable              // enable for TDO pad
 | 
			
		||||
  io.reg_wr_data          := i_jtag_tap.io.wr_data              // 32 bit Write data
 | 
			
		||||
  io.reg_wr_addr          := i_jtag_tap.io.wr_addr              // 7 bit Write address
 | 
			
		||||
  rd_en                   := i_jtag_tap.io.rd_en                      // 1 bit  read enable
 | 
			
		||||
  wr_en                   := i_jtag_tap.io.wr_en                      // 1 bit  Write enable
 | 
			
		||||
  i_jtag_tap.io.rd_data   := io.rd_data                  // 32 bit Read data
 | 
			
		||||
  i_jtag_tap.io.rd_status := 0.U(2.W)
 | 
			
		||||
  i_jtag_tap.io.idle      := 0.U(3.W)                         // no need to wait to sample data
 | 
			
		||||
  i_jtag_tap.io.dmi_stat  := 0.U(2.W)                     // no need to wait or error possible
 | 
			
		||||
  i_jtag_tap.io.version   := 1.U(4.W)                      // debug spec 0.13 compliant
 | 
			
		||||
  i_jtag_tap.io.jtag_id   := io.jtag_id
 | 
			
		||||
  io.dmi_hard_reset       := i_jtag_tap.io.dmi_hard_reset
 | 
			
		||||
  dmireset               := i_jtag_tap.io.dmi_reset
 | 
			
		||||
 | 
			
		||||
  // dmi_jtag_to_core_sync instantiation
 | 
			
		||||
  val i_dmi_jtag_to_core_sync = Module(new dmi_jtag_to_core_sync())
 | 
			
		||||
  i_dmi_jtag_to_core_sync.io.wr_en := wr_en  // 1 bit  Write enable
 | 
			
		||||
  i_dmi_jtag_to_core_sync.io.rd_en := rd_en  // 1 bit  Read enable
 | 
			
		||||
  io.reg_en    :=i_dmi_jtag_to_core_sync.io.reg_en        // 1 bit  Write interface bit
 | 
			
		||||
  io.reg_wr_en := i_dmi_jtag_to_core_sync.io.reg_wr_en    // 1 bit  Write enable
 | 
			
		||||
}
 | 
			
		||||
object dmiwrapper_main extends App{
 | 
			
		||||
  println("Generate Verilog")
 | 
			
		||||
  println((new chisel3.stage.ChiselStage).emitVerilog(new dmi_wrapper()))
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
		Reference in New Issue