The GPIOmodule is a general purpose input/output controller, offering some unique features that eases system integration and use.
Each GPIO port can be configured for input, output or bypass mode. Output data can be set in one access or single or multiples bits can be set or cleared. Every GPIO port can serve as an interrupt source and has its own configuration options:
- Level sensitive, single edge triggered or level change
- Active high or low respectively rising edge or falling edge
- Individual interrupt enable register and status flags
An industry standard AMBA APB host interface simplifies system embedding. An AXI Lite host interface is available on request.
Implementation Options
Following synthesis options are available using top-level generics:
- APB bus width (8/16/32 bit)
- Number of ports
- CPU readback enable