fpga4fun.com - where FPGAs are fun.
Home
Welcome
Information


FPGA projects
Music box
Pong game
R/C servos
Text LCD module
Quadrature decoder
PWM and one-bit DAC
Debouncer
LED displays
Crossing clock domains
External contributions

FPGA interface projects
RS-232
JTAG
I2C
EPP
SPI
CNC steppers

FPGA advanced projects
Graphic LCD panel
Digital oscilloscope
10BASE-T interface
PCI interface
Spoc CPU core

Hands-on
A simple oscilloscope


FPGA introduction
What are FPGAs?
How FPGAs work
FPGA pins
Clocks and global lines
Download cables
Configuration
Learn more

FPGA software
Design software
Pin assignment
Design-entry/HDL
Simulation/HDL
Synthesis and P&R

FPGA electronic
SMD technology
Crystals and oscillators

HDL info
HDL tutorials
Verilog tips
VHDL tips

Quick-start guides
ISE
Quartus

Site
News
FPGA links
HDL tutorials
Forum


What is EPP?

EPP is part of IEEE 1284 (the parallel port standard).
IEEE 1284 also defines SPP and ECP, but EPP provides the best of both, i.e. speed and simplicity.

EPP main characteristics are:

EPP allows "address" and "data" transactions.
In other words, four types of EPP transactions can be issued from the PC:

When the PC does a "write address" (or "write data"), it actually just sends 8-bits to the FPGA with the indication that it's an "address" or "data". The FPGA can do anything with the "address" or "data" values. The FPGA could implement a register bank (with 256 registers). Or it could use the "address" to blink LEDs, and the "data" to make sounds. The PC wouldn't know the difference.

Same thing for reads, the PC can read an "address" or "data", which might actually be any 8-bit value returned by the FPGA.



>>> NEXT: EPP - The software >>>



This page was last updated on September 08 2006.