Pinout

Verilog PinFunction
io 5output adapter_parity
io 6output minion_parity
io 7

input minion CS

io 8input minion MOSI
io 9input minion sclk

io 10

output minion MISO

io 11

input xbar input override

io 12

input xbar output override

io 13

classifier xbar input override

io 14

classifier xbar output override

io 15

output xbar input override

io 16

output xbar output override



Block Diagram

Draw.io link

Addresses and Message Info

Messages are 20 bits wide, with 4 bits being address bits and 16 bits being data bits. Address mapping is as follows:

AddressInput BehaviorOutput Behavior
0Input XBar SPI injectInput XBar SPI out
1Input XBar configN/A
2Classifier XBar InjectClassifier XBar out
3Classifier XBar configN/A
4Output XBar injectOutput XBar SPI out
5Output XBar configN/A
6Classifier set cutoff frequencyN/A
7Classifier set cutoff magnitudeN/A
8Classifier set sampling frequencyN/A


Behavior

  • Inject messages into any crossbar inject the data payload into the crossbar. This will be ignored unless the crossbar is configured properly to read SPI
  • XBar config messages will read only the low 4 bits of the payload, 0xaabb. The aa bits refer to the index of the input to select (0-2) and the bb bits are the index of the output to select (0-2). 
    • Index 0 is always SPI
    • Index 1 is always Wishbone
    • Index 2 is the normal behavior (IE sending from crossbar to FFT) if it exists.
  • Classifier configuration messages configure the classifier.
    • Cutoff frequency sets the cutoff frequency for the classifier. Bins with frequencies in the range of [0, cutoff] are not considered in the highpass
    • Cutoff magnitude is the audio amplitude magnitude at which the classifier will begin classifying.
    • Sampling frequency refers to the number of samples per second that audio is coming in. This is needed to calculate the frequency of the bins of the classifier.
  • No labels