Go to the first, previous, next, last section, table of contents.


Models

(require 'models)

`models.scm' contains some simple models of memory. These make- functions should be called as initial values of signals or as top-level defines. If defined at top level and used (as initial value) from two different blocks, the memory allocated is shared between the blocks.

Function: make-ram-array prototype length ...
Creates a RAM memory of size length. The ram-array memory will be of width sufficient to hold prototype.

Function: make-ram length
Function: make-ram length prototype
Creates a RAM of size length. If an integer prototype is supplied, the RAM will be of width sufficient to hold prototype.

Function: make-fifo length
Function: make-fifo length prototype
Creates a FIFO memory of size length. If an integer prototype is supplied, the FIFO memory will be of width sufficient to hold prototype.

Function: fifo:clear fifo
Returns an empty fifo.

Macro: synch:fifo name length data-source write-strobe read-strobe data-first fullness empty? full?
Creates a FIFO of size length, who's (expression) input is data-source enabled by (expression) write-strobe and emptied by (expression) read-strobe. synch:fifo defines macros or signals with names data-first, fullness, empty?, and full?.


Go to the first, previous, next, last section, table of contents.