URL
https://opencores.org/ocsvn/zipcpu/zipcpu/trunk
Subversion Repositories zipcpu
[/] [zipcpu/] [trunk/] [rtl/] [core/] [README.md] - Rev 209
Compare with Previous | Blame | View Log
## The Core of the ZipCPUHere are the core files to the ZipCPU. In here, you'll find not only the[main ZipCPU core](./zipcpu.v), but also:- Several prefetch routineso [prefetch.v](./prefetch.v) an older prefetch module that only fetchedone instruction at a time, and so prevented pipeliningo [pipefetch.v](./pipefetch.v), my first attempt at building a prefetch withcache. It took a rather unique approach to the cache, implementing it asa rolling window in memory. This file really sticks around for historicalreasons, but not much more.o [dblfetch.v](./dbgfetch.v), fetches two instructions at once (on subsequentclocks). This is designed to increase the speed of the CPU when it isn'tpipelined, by exploiting the fact that many memory accesses go faster forthe second access.o [pfcache.v](./pfcache.v), this is the current/best instruction cachefor the CPU.- [idecode.v](./idecode.v), an instruction decoder- Several memory access routineso [memops.v](./memops.v), a typical/traditional one memory operation at atime means of accessing memory. This was my first approach to memory,and the appropriate approach still when the CPU is not running in itspipelind mode.o [pipemem.v](./pipemem.v), a faster memory access method that groupsconsecutive memory accesses together into a pipelined bus access.This routine has so far compensated for the fact that the ZipCPU does not(yet) have an integrated data cache.o [dcache.v](./dcache.v), is my attempt at building a data cache. Thishas never been integrated with the CPU, and may not be integrated untilthe MMU is also integrated.- [div.v](./div.v), the divide unit- [cpuops.v](./cpuops.v), the ALU unitThe defines within [cpudefs.v](../cpudefs.v) will determine which of thesemodules gets linked into your CPU.
