OpenCores

Project maintainers

Details

Name: brisc
Created: Jan 23, 2008
Updated: Jan 23, 2008
SVN Updated: Mar 10, 2009
SVN: Browse
Latest version: download (might take a bit to start...)
Statistics: View
Bugs: 0 reported / 0 solved
Star1you like it: star it!

Other project properties

Category:Uncategorized
Language:
Development status:
Additional info:
WishBone compliant: No
WishBone version: n/a
License:

Description

BRISC microprocessor is an FPGA optimized micro-sequencer based on paper "Implementation of Microprogrammed Control in FPGAs" by Bruce W. Bomar, Senior Member, IEEE

Features

- feature1
- feature1.1
-feature1.2
-feature2

Status

- status1
- status2

Summary

The microprogrammed approach to implementing control state machines has been widely used since the early 1960s and has the advantages of structured programming and fixed timing characteristics. This paper presents a microprogrammed control unit that has been tailored to implementation in field-programmable gate arrays (FPGAs). The microsequencer has a novel architecture which takes advantage of the enhancements existing in coarse-grained FPGAs to implement efficiently four basic functions: registers, multiplexers, adders, and counters. The sequencer supports both nested subroutines and nested loops, and can operate in both pipelined and nonpipelined modes. The pipelined mode of operation uses delayed branching in which one additional microinstruction always executes following any instruction that changes program flow. It is found that in a typical medium-sized (50 K gates) FPGA, the sequencer can be clocked at over 60 MHz nonpipelined and over 100 MHz pipelined while using less than 5% of the available FPGA logic resources. This leaves the bulk of the FPGA resources available for implementing other digital circuitry that is to be controlled by the microsequencer. While not attractive for a small number of states, the microprogrammed approach has some significant advantages for complex controllers with a large number of states.