Programmable Logic Array (PAL) is one of the earliest field programmable logic devices, launched in the market in 1978 by Monolithic Memories Inc. It comprises a programmable read only memory core and output circuitry,employed to implement particular digital logic functions. PAL devices are field programmable, which means the device could be programmed by the user. However programming a PAL needs expertise. In case the user faces any problem in PAL programming, an experienced PC support provider should be consulted.
Brief History In the early days, small scale integration components like transistor transistor logic (TTL) were used to build a digital circuit. Among the TTL families, 7400 series was very popular. It consisted of variety of logic gates, multiplexers,demultiplexers,flip flops,etc. After the advent of PAL, SSI devices became obsolete.
PAL Technology Early versions of PAL were 20 pin dual inline package. Bipolar transistor technology was used to fabricate PAL. Titanium tungsten programming fuses were used in those one time programmable devices. Later on,Advanced Micro Devices employed CMOS technology to manufacture PALs for which it provided extensive network support.
Architecture Of PAL The programmable elements in a PAL link the true and complemented inputs to the AND gates. These AND gates are also called Product Terms. Product Terms are ORed altogether to constitute a sum of products logic array. The PAL architecture comprises two principal components, namely Programmable Logic Plane and Output Logic Cells.
Programmable Logic Plane Programmable Logic Plane is nothing but a programmable read only memory which routes the signals at the input pins to the output logic macro cells. PAL devices feature transistor cell arrays which are organized in a fixed OR programmable AND fashion. Sum of products logic equations for each output in terms inputs and feedback from output are implemented by these arrays.
Output Logic Macro Cells A standard 20 pin PAL features 8 outputs,10 inputs, 1 pin for power and 1 pin for ground. In the active state the signal at the output pins is 0 volt. The output could be either combinational or registered. A standard PAL device features different output structures, known as Output Logic Macro Cells or OLMC. Earlier versions of PAL, such as 16L8 and 16R8 had fixed OLMCs at the time of manufacturing. Later, in 1983, AMD launched 22V8, whose OLMCs could be configured by the user as registered or combinational.
PAL Programming PAL programs are written using Hardware Description Languages, such as ABEL,CUPL and PALSM. These are computer aided design programs, which convert the PAL logic equations written in a text file to binary files, like JDEC and HEX files. These binary files are programmed into PAL devices using special programming devices. The manufacturers as well as the third party manufacturers render strong PC support for PAL programming issues.
PALASM Language PALSM language was invented to write boolean logic equations for the configured output pins using the configured input pins. The equations are written in a text file,which is then converted into a binary file using compiler. Monolithic Memories Incorporation (MMI) wrote first compiler for PALASM language in FORTRAN IV on IBM 370/168. MMI supplied the free compiler and network support to the PALASM users.
ABEL Language Advanced Boolean Expression Language (ABEL) is a hardware description language developed by Data I/O Corporation in 1983 for programming PALs. It employs concurrent equations,truth table logic format and sequential state machine diagram. Data I/O Corporation provides compiler as well as PC support for ABEL language.
CUPL Language CUPL language was invented by Logical Devices Incorporation. Its earlier versions ran under MS DOS. Now it comes as an integrated development package of windows. CUPL programming issues could be resolved with the network support of Logic Devices Inc.
PC Support For PAL Programming PAL programing requires experience in handling compiler as well as PAL programming devices which could be made easier with the help of network support providers. PAL manufacturers provide extensive PC support for PAL programming. Apart from that, a lot of third party vendors render strong network support for PAL programming issues.