Entity: MdioCore
- File: MdioCore.vhd
Diagram
Description
Title : MDIO Support
Company : SLAC National Accelerator Laboratory
Description: Execute a MDIO-read or -write transaction
This file is part of 'SLAC Firmware Standard Library'. It is subject to the license terms in the LICENSE.txt file found in the top-level directory of this distribution and at: https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. No part of 'SLAC Firmware Standard Library', including this file, may be copied, modified, propagated, or distributed except according to
the terms contained in the LICENSE.txt file.
Generics
Generic name | Type | Value | Description |
---|---|---|---|
TPD_G | time | 1 ns | |
DIV_G | natural range 1 to natural'high | 1 | half-period of MDC in clk cycles; MDC is a subharmonic of clk |
Ports
Port name | Direction | Type | Description |
---|---|---|---|
clk | in | sl | clock and reset |
rst | in | sl | |
trg | in | sl | assert trg for ONE clock |
cmd | in | MdioCommandType | cmd is latched during 'trg' |
din | out | slv(15 downto 0) | read back data - valid during 'don' |
don | out | sl | cmd completed; asserted for one clk |
mdc | out | sl | MDIO interface |
mdo | out | sl | |
mdi | in | sl |
Signals
Name | Type | Description |
---|---|---|
r | RegType | |
rin | RegType |
Constants
Name | Type | Value | Description |
---|---|---|---|
DIV_BITS_C | positive | bitSize( DIV_G - 1) | |
REG_INIT_C | RegType | ( dataOut => ( others => '1' ), din => ( others => '0' ), count => ( others => '1' ), div => ( others => '0' ), mdc => '0', don => '0', state => IDLE ) |
Types
Name | Type | Description |
---|---|---|
State | ( IDLE, RUN ) |
|
RegType |
Processes
- COMB: ( r, trg, mdi, cmd )
- SEQ: ( clk )