Changes

Jump to navigation Jump to search
m
Line 292: Line 292:  
* ''Clk'': clock
 
* ''Clk'': clock
 
* ''/Rst'': asynchronous, active-low reset
 
* ''/Rst'': asynchronous, active-low reset
* ''State'': 3-bit state value
+
* ''state_in'': 3-bit state value
* ''TxRx_A'': 8-bit address from transceiver
+
 
 
* ''TxRx_D'': 8-bit data from transceiver
 
* ''TxRx_D'': 8-bit data from transceiver
 
* ''TxRx_Done'': pulse from transceiver to signal transfer complete
 
* ''TxRx_Done'': pulse from transceiver to signal transfer complete
 +
* ''TxRx_Go'': transceiver go line
 +
* ''TxRx_R/W'': read/write flag for transceiver
 +
* ''TxRx_Aout'': register address bus for transceiver
 +
   −
internal signals
  −
* ''S_En'': state enable, ''S_En'' <= not ''St(2)'' and ''St(1)'' and not ''St(0)''
  −
* ''Go'': when ''S_En'' goes high ''Go'' pulses for one cycle
      
blocks
 
blocks
* '''Fetcher'''
+
* '''Register INT0RD (0x76)''' request via <tt>reqFromAddr</tt> pulsed by the ''LoopEn'' signal from Looper (below).
** Reads register 0x76 (INT0RD) by sending a read request to the transceiver
  −
** inputs
  −
*** ''F_Go'': pulse to start request, ''F_Go'' <= ''Go'' or ''Loop''
  −
** outputs
  −
*** ''TxRx_Go'': ''Go'' line on transceiver
  −
*** ''TxRx_R/W'': ''R/W'' line on transceiver, tied high (read)
  −
*** ''TxRx_A'': ''A_in'' bus on transceiver, tied to 0x76 (0111 0110)
  −
**** Note: ''D_in'' on transceiver is not used; assume this line defaults to zero
   
* '''Looper'''
 
* '''Looper'''
 
** Switch to determine if this state should loop on itself or continue to the next state.
 
** Switch to determine if this state should loop on itself or continue to the next state.
Line 318: Line 311:  
*** ''TxRx_Data'': ''D_out'' bus from transceiver
 
*** ''TxRx_Data'': ''D_out'' bus from transceiver
 
** outputs
 
** outputs
*** ''Loop'': pulse to repeat fetch cycle; ''Loop'' <= ''S_En'' and ''TxRx_Done'' and ''TxRx_Data(6)''
+
*** ''LoopEn'': pulse to repeat fetch cycle; ''Loop'' <= ''S_En'' and ''TxRx_Done'' and ''TxRx_Data(6)''
 
*** ''Done'': pulse to finish state; connects to state counter as an enable; ''Done'' <= ''S_En'' and ''TxRx_Done'' and not ''TxRx_Data(6)''
 
*** ''Done'': pulse to finish state; connects to state counter as an enable; ''Done'' <= ''S_En'' and ''TxRx_Done'' and not ''TxRx_Data(6)''
 
*** ''New_St'': new state value to load into state register; goes to 011 when ''Done'' is high
 
*** ''New_St'': new state value to load into state register; goes to 011 when ''Done'' is high
1,004

edits

Navigation menu