L-32 Programmable Logic Devices
- Simple Programmable Logic Devices:
- Masked Programmable ROM: These are programmed by the manufacturer in the factory. These are used to store some of the critical implementations such as control information, ISR, Basic IO services, and even the hardware circuit. We concentrate on the hardware implementation inside the ROM. Since ROM is a non-volatile memory, it stores bits (or group of bits at different locations). Figure-1 illustrate this:
To read the data from the memory, we need to supply the address information to ROM, the the information at that address can be read.
The information (1/0) is permanently stored during manufacturing. The internal structure is shown below in figure-2
The presence of diode between the row and column provide a path to output binary lines. For example when the address input A1A0= 10, the address decode inside the ROM selects the row-2, and the output on the out line B1B0 is read as 1 0. That the first column is connected through diode with row-2 thus outputting a ‘1’ and the absence of diode in 2nd column gives ‘0’ on line B0.
- Programmable ROM:
The disadvantage of ROM is that user does not have the flexibility to program his code directly, he is dependent on the manufacrurer which is a time consuming. So for prototyping of the projects, PROM is better choice. A PROG can be programmed only once by the programmer, thereafter, the information become permanent like in ROM. A PROM has a fusible links connecting the rows and columns. A fuse can be blown by passing extra high current through the link, thus disconnecting that column and hence storing ‘0’. The presence of link will provide high ‘1’ . The simplified configuration of PROM is shown in figure-2 below.
In the figure transistors (with fusible links )are employed for information storage. The fusible links connects the Emitter and the column lines. The collector is connected to some +ve potential. Thus when a row is selected by appropriate address input, it drives the base of the transistor making it ON. If the fusible link is intact, will output a ‘1’ on that column else if the link is absent a ‘0’ will be outputted on that column.
Example :Show the internal structure of the PROM for a 2-bit Binary to Gray Code Converter.
Solution : The truth table for a 2-bit binary to gray code converter is given below:
Binary Input / Gray OutputB1 / B0 / G1 / G0
0 / 0 / 0 / 0
0 / 1 / 0 / 1
1 / 0 / 1 / 1
1 / 0 / 1 / 0
For implementing on a PROM, we’ll use the binary input as the address for the PROM. G1G0 will be the gray output lines.