OpenCores
URL https://opencores.org/ocsvn/sdhc-sc-core/sdhc-sc-core/trunk

Subversion Repositories sdhc-sc-core

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /sdhc-sc-core/trunk
    from Rev 134 to Rev 135
    Reverse comparison

Rev 134 → Rev 135

/src/grpSd/unitSdCardModel/src/SDOCR.sv
6,6 → 6,9
// See SD Spec 2.00 page 74 (85 in pdf)
//
 
`ifndef SDOCR
`define SDOCR
 
typedef logic[23:15] voltage_t;
const voltage_t cSdVoltageWindow = 'b111111111;
const logic cOCRBusy = 0;
42,3 → 45,5
 
endclass
 
`endif
 
/src/grpSd/unitSdCardModel/src/SDCommandArg.sv
0,0 → 1,14
//
// file: SDCommandArg.sv
// author: Rainer Kastl
//
//
//
`ifndef SDCOMMANDARG
`define SDCOMMANDARG
 
`define cSDArgWith 32
typedef logic[`cSDArgWith-1:0] SDCommandArg;
 
`endif
/src/grpSd/unitSdCardModel/src/SdData.sv
4,6 → 4,9
//
// Class for sending and receiving data (SD spec 2.00)
//
 
`ifndef SDDATA
`define SDDATA
typedef enum {
standard,
124,3 → 127,4
 
endclass
 
`endif
/src/grpSd/unitSdCardModel/src/SdCardModel.sv
5,12 → 5,15
// Models a SDCard for verification
//
 
`ifndef SDCARDMODEL
`define SDCARDMODEL
 
const logic cActivated = 1;
const logic cInactivated = 0;
 
include "../../unitSdCardModel/src/Crc.sv";
include "../../unitSdCardModel/src/SdCommand.sv";
include "../../unitSdCardModel/src/SdData.sv";
`include "Crc.sv";
`include "SdCommand.sv";
`include "SdData.sv";
 
class SDCard;
local virtual ISdCard.Card ICard;
326,3 → 329,5
endtask
 
endclass
 
`endif
/src/grpSd/unitSdCardModel/src/SdCardState.sv
5,6 → 5,11
// SDCardState class for use in the SdCardModel
//
 
`ifndef SDCARDSTATE
`define SDCARDSTATE
 
`include "SDCommandArg.sv"
 
typedef enum {
idle = 0, ready = 1, ident = 2, stby = 3, trans = 4,
data = 5, rcv = 6, prg = 7, dis = 8
51,3 → 56,6
endfunction
 
endclass
 
`endif
 
/src/grpSd/unitSdCardModel/src/SdCommand.sv
4,8 → 4,15
//
// Classes and types describing the commands of the SD spec, used in SdCardModel
//
`define cSDArgWith 32
typedef logic[`cSDArgWith-1:0] SDCommandArg;
 
`ifndef SDCOMMAND
`define SDCOMMAND
 
`include "SDCommandArg.sv";
`include "SdCardState.sv";
`include "SDCID.sv";
`include "SDOCR.sv";
 
typedef logic[15:0] RCA_t;
 
typedef enum {
33,8 → 40,6
 
const SDCommandArg cSdArgACMD41HCS = 'b01000000111111111000000000000000;
 
include "../../unitSdCardModel/src/SdCardState.sv";
 
class SDCommandToken;
logic startbit;
logic transbit;
154,7 → 159,6
endclass
 
include "../../unitSdCardModel/src/SDOCR.sv";
class SDCommandR3 extends SDCommandResponse;
 
function new(SDOCR ocr);
183,7 → 187,6
 
endclass
 
include "../../unitSdCardModel/src/SDCID.sv";
class SDCommandR2 extends SDCommandResponse;
local SDCID cid;
238,3 → 241,4
 
endclass
 
`endif
/src/grpSd/unitSdCardModel/src/SDCID.sv
5,6 → 5,9
// Register CID
//
 
`ifndef SDCID
`define SDCID
 
typedef logic[7:0] manufacturer_id_t;
typedef logic[15:0] app_id_t;
typedef logic[39:0] pname_t;
49,3 → 52,5
 
endclass
 
`endif
 
/src/grpSd/unitSdCardModel/src/Crc.sv
5,6 → 5,9
// CRC7 calculation
//
 
`ifndef CRC
`define CRC
 
typedef logic[6:0] aCrc7;
typedef logic[15:0] aCrc16;
 
33,3 → 36,5
 
endfunction
 
`endif
 
/src/grpSd/unitSdWbSlave/src/WishboneInterface.sv
5,6 → 5,9
// Description: Wishbone interface
//
 
`ifndef WISHBONEINTERFACE
`define WISHBONEINTERFACE
 
interface WishboneInterface;
 
logic ERR_I;
44,3 → 47,5
 
endinterface;
 
`endif
 
/src/grpSd/unitSdWbSlave/src/Wishbone-BFM.sv
6,6 → 6,11
// Wishbone spec Revision B.3
//
 
`ifndef WISHBONE
`define WISHBONE
 
`include "WishboneInterface.sv";
 
class Wishbone;
 
virtual WishboneInterface.Master Bus;
216,3 → 221,5
 
endclass
 
`endif
 
/src/grpSd/unitSdVerificationTestbench/Files.tcl
30,6 → 30,8
set svunits {Sd SdCardModel
Sd SdVerificationTestbench}
 
set sysvlogparams [list +incdir+../../unitSdCardModel/src+../src+../../unitSdWbSlave/src]
 
#set tb
set top Testbed
 
/src/grpSd/unitSdVerificationTestbench/src/SdVerificationTestbench.sv
5,6 → 5,9
// SystemVerilog Testbench testing SdCmd and SdController
//
 
`ifndef SDVERIFICATIONTESTBENCH
`define SDVERIFICATIONTESTBENCH
 
`define cWishboneWidth 32
const integer cWishboneWidth = 32;
const logic cAsserted = 1;
15,10 → 18,9
const aCTI ClassicCycle = "000";
 
 
include "../../unitSdCardModel/src/SdCardModel.sv";
include "../../unitSdVerificationTestbench/src/SdCmdInterface.sv";
include "../../unitSdWbSlave/src/WishboneInterface.sv";
include "../../unitSdWbSlave/src/Wishbone-BFM.sv";
`include "SdCardModel.sv";
`include "SdCmdInterface.sv";
`include "Wishbone-BFM.sv";
 
`define cCmdCount 1000
 
144,3 → 146,5
event ApplyCommand, CardRecv, CmdReceived, GenCmd, InitDone;
 
endmodule
 
`endif
/src/grpSd/unitSdVerificationTestbench/src/SdCmdInterface.sv
5,6 → 5,9
// Interface for the SdCmd entity
//
 
`ifndef SDCMDINTERFACE
`define SDCMDINTERFACE
 
interface ISdCard;
logic Clk = 0;
logic nResetAsync;
32,3 → 35,5
 
endinterface
 
`endif
 
/src/sim/sim.tcl
102,7 → 102,11
foreach {grp unit} $svunits {
set fname ../../../grp$grp/unit$unit/src/$unit.sv
if [file isfile $fname] {
vlog $fname
if [info exists sysvlogparams] {
vlog $fname $sysvlogparams
} else {
vlog $arg
}
} else {
echo "Svunit $grp $unit not found! ($fname)"
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.