OSDN Git Service

hw/mips: implement ITC Storage - Empty/Full Sync and Try Views
authorLeon Alrae <leon.alrae@imgtec.com>
Fri, 25 Mar 2016 13:49:32 +0000 (13:49 +0000)
committerLeon Alrae <leon.alrae@imgtec.com>
Wed, 30 Mar 2016 08:14:00 +0000 (09:14 +0100)
commit4051089d61166e7b548ac4b62288a52312331f31
treed028b6b4f92225edfebb42bbd7f9c5f5992cea0d
parent5924c869c05c89c8699c5b2f6347880ba88e1989
hw/mips: implement ITC Storage - Empty/Full Sync and Try Views

Empty/Full Synchronized and Try views can be used to access FIFO cells.
Store to the FIFO cell pushes the value into the queue, load pops the oldest
element from the queue. Cell's Full and Empty bits are automatically updated
to reflect new state of the cell.

Empty/Full Synchronized View causes the issuing thread to block when FIFO is
empty while thread is performing a read, or FIFO is full while thread is
performing a write.

Empty/Full Try View never blocks the thread. If cell is full then write is
ignored, if cell is empty then load returns 0.

Trap bit (i.e. Gating Storage exceptions) not implemented.
Store Conditional support for E/F Try View (i.e. indicate failure if FIFO
is full) not implemented.

Signed-off-by: Leon Alrae <leon.alrae@imgtec.com>
hw/misc/mips_itu.c