SPLD, Simple Programmable Logic Devices, т. е. Простые программируемые логические устройства делятся на подклассы программируемых логических матриц ПЛМ (PLA, Programmable Logic Arrays)и программируемой матричной логики ПМЛ (PAL, Programmable Arrays Logic, или GAL, Generic Array Logic). Оба эти подкласса микросхем реализуют дизъюнктивные нормальные формы (ДНФ) переключательных функций, а их основными блоками являются две матрицы: матрица элементов Ии матрица элементов ИЛИ, включенные последовательно. Такова структурная модель ПЛМ и ПМЛ. Технически они могут быть выполнены и как последовательность двух матриц эле-ментов ИЛИ -НЕ, но варианты с последовательностью матриц И -ИЛИ и с последовательностью матриц ИЛИ -НЕ — ИЛИ -НЕ функционально эквивалентны, т.к. второй вариант согласно правилу де Моргана тоже реализует ДНФ, но для инверсных значений переменных. На входы первой матрицы поступают т входных переменных в виде как прямых, так и инверсных значений, так что матрица имеет 2т входных линий. На ее выходах формируются конъюнктивные термы, ранг которых не выше т. Число термов не имеет прямой связи с величиной т и определяется конструктивными параметрами матрицы — числом конъюнкторов, которое обозначим через q. Первая матрица идентична для обоих подклассов SPLD, т. е. для ПЛМ и ПМЛ. Выработанные термы поступают на вход матрицы ИЛИ. Эти матрицы для ПЛМ и ПМЛ различны. В ПЛМ матрица ИЛИ программируется, а в ПМЛ она фиксирована. Программируемая матрица ИЛИ микросхем ПЛМ составлена из дизъюнкторов, имеющих по q входов. На входы каждого дизъюнктора при программировании можно подать любую комбинацию имеющихся термов, причем термы можно использовать многократно. Число дизъюнкторов в матрице ИЛИ определяет число выходов ПЛМ, которое обозначим через л. Из изложенного вид-но, что ПЛМ позволяет реализовать систему из п переключательных функций, за-висящих не более чем от m переменных и содержащих не более чем q термов. Поэтому функциональные возможности ПЛМ характеризуются тремя цифрами: m, q, n. В ПМЛ выработанные матрицей И термы поступают на фиксированную (непрограммируемую) матрицу элементов ИЛИ. Это означает жесткое заранее заданное распределение имеющихся термов между отдельными дизъюнкторами. Каждому дизъюнктору придаются свои собственные термы, и если для разных дизъюнкторов окажутся нужными одинаковые термы, придется вырабатывать их в матрице И несколько раз. Однако при этом программируемость матрицы ИЛИ исключается, что для многих задач в итоге существенно упрощает схему ПМЛ в сравнении со схемой ПЛМ. ПЛМ обладают большей функциональной гибкостью, все воспроизводимые ими функции могут быть комбинациями любого числа термов, формируемых матрицей И. Это полезно при реализации систем переключательных функций, имеющих большие взаимные пересечения по термам. Такие системы свойственны, например, задачам формирования сигналов управления машинными циклами процессоров. Для широко распространенных в практике задач построения "произвольной логики" большое пересечение функций по термам не типично. Для них программируемость матрицы ИЛИ используется мало и становится излишней роскошью, неоправданно усложняющей микросхему. Поэтому ПМЛ распространены больше, чем ПЛМ, и к их числу относится большинство SPLD. Структуры ПМЛ полнее освещены ниже при описании CPLD, составными частями которых они служат. В сложных программируемых логических схемах CPLD несколько блоков, подобных ПМЛ, объединяются средствами программируемой коммутационной матрицы.