TCP/IP Protocol Suite

Ethmac IPCore Definitions




ethmac_defines.v
//`define ETH_BIST                    // Bist for usage with Virtual Silicon RAMS

        `define ETH_MBIST_CTRL_WIDTH 3        // width of MBIST control bus

        // Ethernet implemented in Xilinx Chips (uncomment following lines)
        // `define ETH_FIFO_XILINX             // Use Xilinx distributed ram for tx and rx fifo
        // `define ETH_XILINX_RAMB4            // Selection of the used memory for Buffer descriptors
                                              // Core is going to be implemented in Virtex FPGA and contains Virtex 
                                              // specific elements. 

        // Ethernet implemented in Altera Chips (uncomment following lines)
        //`define ETH_ALTERA_ALTSYNCRAM

        // Ethernet implemented in ASIC with Virtual Silicon RAMs
        // `define ETH_VIRTUAL_SILICON_RAM     // Virtual Silicon RAMS used storing buffer decriptors (ASIC implementation)

        // Ethernet implemented in ASIC with Artisan RAMs
        // `define ETH_ARTISAN_RAM             // Artisan RAMS used storing buffer decriptors (ASIC implementation)

        // Uncomment when Avalon bus is used
        //`define ETH_AVALON_BUS

        `define ETH_MODER_ADR         8'h0    // 0x0 
        `define ETH_INT_SOURCE_ADR    8'h1    // 0x4 
        `define ETH_INT_MASK_ADR      8'h2    // 0x8 
        `define ETH_IPGT_ADR          8'h3    // 0xC 
        `define ETH_IPGR1_ADR         8'h4    // 0x10
        `define ETH_IPGR2_ADR         8'h5    // 0x14
        `define ETH_PACKETLEN_ADR     8'h6    // 0x18
        `define ETH_COLLCONF_ADR      8'h7    // 0x1C
        `define ETH_TX_BD_NUM_ADR     8'h8    // 0x20
        `define ETH_CTRLMODER_ADR     8'h9    // 0x24
        `define ETH_MIIMODER_ADR      8'hA    // 0x28
        `define ETH_MIICOMMAND_ADR    8'hB    // 0x2C
        `define ETH_MIIADDRESS_ADR    8'hC    // 0x30
        `define ETH_MIITX_DATA_ADR    8'hD    // 0x34
        `define ETH_MIIRX_DATA_ADR    8'hE    // 0x38
        `define ETH_MIISTATUS_ADR     8'hF    // 0x3C
        `define ETH_MAC_ADDR0_ADR     8'h10   // 0x40
        `define ETH_MAC_ADDR1_ADR     8'h11   // 0x44
        `define ETH_HASH0_ADR         8'h12   // 0x48
        `define ETH_HASH1_ADR         8'h13   // 0x4C
        `define ETH_TX_CTRL_ADR       8'h14   // 0x50
        `define ETH_RX_CTRL_ADR       8'h15   // 0x54
        `define ETH_DBG_ADR           8'h16   // 0x58

        `define ETH_MODER_DEF_0         8'h00
        `define ETH_MODER_DEF_1         8'hA0
        `define ETH_MODER_DEF_2         1'h0
        `define ETH_INT_MASK_DEF_0      7'h0
        `define ETH_IPGT_DEF_0          7'h12
        `define ETH_IPGR1_DEF_0         7'h0C
        `define ETH_IPGR2_DEF_0         7'h12
        `define ETH_PACKETLEN_DEF_0     8'h00
        `define ETH_PACKETLEN_DEF_1     8'h06
        `define ETH_PACKETLEN_DEF_2     8'h40
        `define ETH_PACKETLEN_DEF_3     8'h00
        `define ETH_COLLCONF_DEF_0      6'h3f
        `define ETH_COLLCONF_DEF_2      4'hF
        `define ETH_TX_BD_NUM_DEF_0     8'h40
        `define ETH_CTRLMODER_DEF_0     3'h0
        `define ETH_MIIMODER_DEF_0      8'h64
        `define ETH_MIIMODER_DEF_1      1'h0
        `define ETH_MIIADDRESS_DEF_0    5'h00
        `define ETH_MIIADDRESS_DEF_1    5'h00
        `define ETH_MIITX_DATA_DEF_0    8'h00
        `define ETH_MIITX_DATA_DEF_1    8'h00
        `define ETH_MIIRX_DATA_DEF     16'h0000 // not written from WB
        `define ETH_MAC_ADDR0_DEF_0     8'h00
        `define ETH_MAC_ADDR0_DEF_1     8'h00
        `define ETH_MAC_ADDR0_DEF_2     8'h00
        `define ETH_MAC_ADDR0_DEF_3     8'h00
        `define ETH_MAC_ADDR1_DEF_0     8'h00
        `define ETH_MAC_ADDR1_DEF_1     8'h00
        `define ETH_HASH0_DEF_0         8'h00
        `define ETH_HASH0_DEF_1         8'h00
        `define ETH_HASH0_DEF_2         8'h00
        `define ETH_HASH0_DEF_3         8'h00
        `define ETH_HASH1_DEF_0         8'h00
        `define ETH_HASH1_DEF_1         8'h00
        `define ETH_HASH1_DEF_2         8'h00
        `define ETH_HASH1_DEF_3         8'h00
        `define ETH_TX_CTRL_DEF_0       8'h00 //
        `define ETH_TX_CTRL_DEF_1       8'h00 //
        `define ETH_TX_CTRL_DEF_2       1'h0  //
        `define ETH_RX_CTRL_DEF_0       8'h00
        `define ETH_RX_CTRL_DEF_1       8'h00


        `define ETH_MODER_WIDTH_0       8
        `define ETH_MODER_WIDTH_1       8
        `define ETH_MODER_WIDTH_2       1
        `define ETH_INT_SOURCE_WIDTH_0  7
        `define ETH_INT_MASK_WIDTH_0    7
        `define ETH_IPGT_WIDTH_0        7
        `define ETH_IPGR1_WIDTH_0       7
        `define ETH_IPGR2_WIDTH_0       7
        `define ETH_PACKETLEN_WIDTH_0   8
        `define ETH_PACKETLEN_WIDTH_1   8
        `define ETH_PACKETLEN_WIDTH_2   8
        `define ETH_PACKETLEN_WIDTH_3   8
        `define ETH_COLLCONF_WIDTH_0    6
        `define ETH_COLLCONF_WIDTH_2    4
        `define ETH_TX_BD_NUM_WIDTH_0   8
        `define ETH_CTRLMODER_WIDTH_0   3
        `define ETH_MIIMODER_WIDTH_0    8
        `define ETH_MIIMODER_WIDTH_1    1
        `define ETH_MIICOMMAND_WIDTH_0  3
        `define ETH_MIIADDRESS_WIDTH_0  5
        `define ETH_MIIADDRESS_WIDTH_1  5
        `define ETH_MIITX_DATA_WIDTH_0  8
        `define ETH_MIITX_DATA_WIDTH_1  8
        `define ETH_MIIRX_DATA_WIDTH    16 // not written from WB
        `define ETH_MIISTATUS_WIDTH     3 // not written from WB
        `define ETH_MAC_ADDR0_WIDTH_0   8
        `define ETH_MAC_ADDR0_WIDTH_1   8
        `define ETH_MAC_ADDR0_WIDTH_2   8
        `define ETH_MAC_ADDR0_WIDTH_3   8
        `define ETH_MAC_ADDR1_WIDTH_0   8
        `define ETH_MAC_ADDR1_WIDTH_1   8
        `define ETH_HASH0_WIDTH_0       8
        `define ETH_HASH0_WIDTH_1       8
        `define ETH_HASH0_WIDTH_2       8
        `define ETH_HASH0_WIDTH_3       8
        `define ETH_HASH1_WIDTH_0       8
        `define ETH_HASH1_WIDTH_1       8
        `define ETH_HASH1_WIDTH_2       8
        `define ETH_HASH1_WIDTH_3       8
        `define ETH_TX_CTRL_WIDTH_0     8
        `define ETH_TX_CTRL_WIDTH_1     8
        `define ETH_TX_CTRL_WIDTH_2     1
        `define ETH_RX_CTRL_WIDTH_0     8
        `define ETH_RX_CTRL_WIDTH_1     8


        // Outputs are registered (uncomment when needed)
        `define ETH_REGISTERED_OUTPUTS

        // Settings for TX FIFO
        `define ETH_TX_FIFO_CNT_WIDTH  5
        `define ETH_TX_FIFO_DEPTH      16
        `define ETH_TX_FIFO_DATA_WIDTH 32

        // Settings for RX FIFO
        `define ETH_RX_FIFO_CNT_WIDTH  5
        `define ETH_RX_FIFO_DEPTH      16
        `define ETH_RX_FIFO_DATA_WIDTH 32

        // Burst length
        `define ETH_BURST_LENGTH       4    // Change also ETH_BURST_CNT_WIDTH
        `define ETH_BURST_CNT_WIDTH    3    // The counter must be width enough to count to ETH_BURST_LENGTH
        
Ethmac IPCore TimeScale
eth_timescales.v
`timescale 1ns / 1ns




John Doe
12:10:48pm On 2022.09.27
fragrant intensive disinfect <a href=http://bag33ondu.com>bag33ondu.com</a> <a href= http://bag33ondu.com >bag33ondu.com</a> http://bag33ondu.com publisher scarlet lagoon .
John Doe
08:41:06am On 2022.10.06
6 sД±nД±f ingilizce kitabД± sayfa 25bir emlak emek ankara <a href="https://tee-shirts.online/dowland-mp4-porn.php">dowland mp4 porn</a> buz simulator hilehas turizm izmit flvto converter mp3altД±nmadenci.
John Doe
03:19:55am On 2022.10.14
<a href="https://turhaberleri.online/">Türkiye Haberleri</a>.