1.1   THE FPGA PARADIGM

Since the beginning of digital electronics, engineers have sought to design circuits that do useful work on data. To achieve this goal circuits were composed from three key elements:

  • Data operators: Gates that implement useful functions by transforming input states to output states.
  • Storage elements: Latches, flip-flops, that save state, store operands, and so forth.
  • Wires: Point-to-point wires, busses, that communicate values between and among storage elements and data operators.

Indeed, the history of semiconductors can be viewed as the delivery of these simple resources in various conceptual and/or physical packages. Whole industries have evolved around the delivery of a single one of these resources, for example, dynamic random-access memory (DRAM) businesses supplying the components of primary memory to computer manufacturers and the application-specific integrated-circuit (ASIC) vendors, supplying logic resources in the form of gate arrays to systems businesses.

In earlier times, engineers had direct access to these three resources and were able to breadboard systems from gates and flip-flops, or convenient aggregations of them, on simple printed circuit boards (PCBs), by directly wiring them together. However, when integrated circuits evolved, the engineer lost direct access to these resources and was required to use encapsulations of them in logic families [TTL88]. More recently the engineer regained intimate access to the resources with the commercial ...

Get Field-Programmable Gate Arrays: Reconfigurable Logic for Rapid Prototyping and Implementation of Digital Systems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.