|
|
преди 6 години | |
|---|---|---|
| docs | преди 6 години | |
| quartus | преди 6 години | |
| scripts | преди 6 години | |
| simulation | преди 6 години | |
| src | преди 6 години | |
| tools | преди 6 години | |
| .gitignore | преди 6 години | |
| Makefile | преди 6 години | |
| UCL_project_y3.qpf | преди 6 години | |
| UCL_project_y3.qsf | преди 6 години | |
| readme.md | преди 6 години |
The aim is to compare similar characteristic RISC and OISC architectures to determinate advantages and trade-offs following points:
Possible application of both architectures could be use inside of microcontroller or SoC (System on a chip) systems similar to 8bit Atmel AVR or Mirochip PIC microcontrollers, therefore processors must be capable of controlling and communicating with external modules such as UART and GPIO.
This project based on Intel Quartus. Hardware is implemented in SystemVerilog. Project directories:
The top level has 4 main blocks, that can be found in src/top.sv file.
Generates various frequences from main 50MHz crystal. Currenty 3 clock are generated:
Includes sdram controller and fifo queues to synchonise data between mclk and fclk. It communicates with processor using 24bit address bus and 16bit data bus. It is up to processor to decide how to efficiantly store data in this memory.
This include all external functions that might be useful for processor, e.g. UART, on board LED and DIP switch control. In future this might include timers or other communication methods. Processor communicates to this block via 8bit address bus and 8bit data bus. The table of addresses to function map will be added in the future.
The processor itself. This desiged to have common interface so RISC and OISC processor and their variations could be simply swapped between without need to rewrite all project.
The hardware is tested on DE0 Nano FPGA board.
Uses Open Source Documented Verilog UART library. This is simple 1 file library without any hardware FIFO queues.
Pinout:
Uses sdram-controller library to communicate with sdram chip on DE0 Nano board.