Кіріспе

Бағдарламаланатын логикалық құрылғы түрі

Бағдарламаланатын логикалық массив (PLA) – комбинациялық логикалық тізбектерді жүзеге асыру үшін қолданылатын бағдарламаланатын логикалық құрылғының бір түрі. PLA-да бағдарламаланатын AND шлюздерінің жиынтығы бар, олар бағдарламаланатын OR шлюздерінің жиынтығымен байланыстырылған, олар нәтижені алу үшін шартты түрде инверсиялана алады. Онда N кіріс айнымалысы үшін 2N AND шлюзі және PLA-дан M шығыс үшін, барлық AND шлюздерінен бағдарламаланатын кірістері бар M OR шлюзі болуы керек. Бұл құрылым логикалық функциялардың көптеген түрлерін канондық көбейтулердің қосындысы түрінде синтездеуге мүмкіндік береді. PLA, бағдарламаланатын массивтік логикалық құрылғылардан (PAL және GAL) оның AND және OR шлюздерінің екеуі де бағдарламаланатындығымен ерекшеленеді. PAL бағдарламаланатын AND шлюздеріне ие, бірақ OR шлюздері тұрақты.

Тарих

1970 жылы Texas Instruments компаниясы IBM-нің тек оқуға арналған ассоциативтік жадысы немесе ROAM негізінде маскалық бағдарламаланатын интегралды схеманы (IC) жасады. Бұл құрылғы, TMS2000, IC өндірісі кезінде металл қабатын өзгерту арқылы бағдарламаланды. TMS2000-де 17 кіріс және 18 шығыс болды, сондай-ақ жады үшін 8 JK триггері болды. TI осы құрылғы үшін «Бағдарламаланатын логикалық массив» терминін енгізді.

Тек оқу үшін арналған жадқа қарағанда артықшылықтары

Кірістердің әр комбинациясы үшін қажетті шығыстар тек оқуға арналған жадқа бағдарламалануы мүмкін, кірістер адрестік шина арқылы басқарылады, ал шығыстар деректер ретінде оқылады. Дегенмен, бұл кірістердің барлық мүмкін комбинациясы үшін жеке жад орнын қажет етеді, соның ішінде ешқашан туындамайтын комбинациялар да, сондай-ақ "маңызды емес" жағдайлар үшін деректерді дубликациялауды талап етеді (мысалы, "егер кіріс A 1 болса, шығу X-ке қатысты кіріс B қандай екеніне біз мән бермейміз": ROM-да мұны B-нің әр мүмкін мәні үшін екі рет жазу қажет, ал "маңызды емес" кірістердің саны артқан сайын дубликациялау экспоненциалды түрде өседі); сондықтан бағдарламаланатын логикалық тізбек көбінесе тек оқуға арналған жадтағы эквивалентіне қарағанда аз транзисторларды қолдана отырып логикалық схеманы жүзеге асыра алады. Бұл әсіресе транзисторлардың жетіспейтін процессорлық чиптің құрамында маңызды (мысалы, бастапқы 6502 чипі процессордың әртүрлі операцияларын басқару үшін PLA-ны қамтыды).

Қолданбалар

PLA-ның бір қолданылуы – деректер жолының басқаруын жүзеге асыру. Ол нұсқаулар жиынтығында әртүрлі күйлерді анықтайды және шартты тармақтану арқылы келесі күйді анықтайды. [Мысалы, егер машина 2-ші күйде болса және нұсқаулықта дереу өріс болса 4-ші күйге өтуі керек болса; онда PLA 2-ші күйде басқарудың қызметтерін анықтауы керек, егер нұсқаулықта дереу өріс болса келесі күйді 4-ке орнатуы керек, сондай-ақ 4-ші күйде басқарудың қызметтерін анықтауы керек]. Бағдарламаланатын логикалық тізбектер жүйеге арналған күй диаграммасына сәйкес келуі тиіс. 1982 жылы шыққан алғашқы Commodore 64 үй компьютерлері (1983 жылдың басына дейін) бастапқыда программаланған Signetics 82S100 PLA-ны қолданды, бірақ сұраныс артқан сайын MOS Technology / Commodore Semiconductor Group маскамен бағдарламаланған PLA-ны шығара бастады, оның бөлік нөмірі 906114 01 болды.