16-bit Xgate Co-processor Module

Details
Category: Coprocessor
Created: August 01, 2009
Updated: January 27, 2020
Language: Verilog
Other project properties
Development Status: Alpha
WishBone compliant: Yes
WishBone version: n/a
License: LGPL
Description
The Xgate Co-processor Module, Xgate, is a 16 bit programmable RISC processor that is managed by a host CPU to reduce the host load in handling interrupts. Because the Xgate is user programmable there is a great deal of user control in how to preprocess data from peripheral modules. The module may be configured as a simple DMA controller to organize data such that the host only deals with whole messages and not individual words or bytes. The Xgate may also deal with higher levels of messaging protocols than the peripheral hardware recognizes. Encryption algorithms are also supported by the instruction set.
Features
• Instruction set compatible with Freescale XGATE co-processor
• Handles up to 127 interrupt inputs
• Eight software triggerable interrupt channels.
• Eight semaphore registers to coordinate host/Xgate shared memory.
• Static synchronous design
• Fully synthesizable
Status
Verilog Code: 85%
Documentation: 60%
Please see the "News" tab for more detailed information or the README file in the "trunk" SVN directory.