АРХИТЕКТУРА ЛОГИЧЕСКОГО БЛОКА ДЛЯ ПРОГРАММИРУЕМОЙ ВЕНТИЛЬНОЙ МАТРИЦЫ

1. Программируемый логический блок (30), содержащий:
первую LUT (31, 51), имеющую первое множество входов (311) данных,
второе множество конфигурационных входов (312, 414) и
третье множество выходов (313), и
вторую LUT (32, 42), имеющую
четвертое множество входов (341) данных и
пятое множество конфигурационных входов (342, 444), и
шестое множество выходов (343),
указанный программируемый логический блок (30) отличается тем, что дополнительно содержит:
программируемый контроллер (33, 43), имеющий
соответствующий выход, соединенный с каждым из указанного второго множества конфигурационных входов (312, 414) и указанного пятого множества конфигурационных входов (342, 444),
седьмое множество ячеек (4300, 435) конфигурационного запоминающего устройства, и
восьмое множество входов (432) данных,
причем значение каждого из указанного второго множества конфигурационных входов (312, 414) и указанного пятого множества конфигурационных входов (342, 444) обуславливается с помощью значения, присутствующего на каждом из указанного восьмого множества входов (432) данных вместе со значениями указанного седьмого множества ячеек (6300, 435) конфигурационного запоминающего устройства предопределенным образом.
2. Программируемый логический блок по п. 1, дополнительно содержащий логическую схему (35, 45), подключенную к каждому из указанного третьего множества выходов (313) и указанного шестого множества выходов (343), указанная логическая схема (35, 45) настраивается для объединения указанных выходов (313, 343) для реализации указанной функции обработки данных.
3. Программируемый логический блок по п. 2, в котором указанная логическая схема содержит компоненты для реализации множества функций обработки данных и дополнительно содержит одну или более ячеек конфигурационного запоминающего устройства, соединенных, соответственно, с компонентами указанной логической схемы, чтобы программируемым образом выбирать указанные конкретные функции обработки данных из указанного множества функций обработки данных.
4. Программируемый логический блок по п. 2 или 3, в котором указанное множество функций обработки данных включает в себя функциональные возможности 1-разрядного полного сумматора.
5. Программируемый логический блок по любому из пп. 2-4, в котором указанное множество функций обработки данных включает в себя функциональные возможности 2-разрядного полного сумматора.
6. Программируемый логический блок по любому из пп. 2-5, в котором указанное множество функций обработки данных включает в себя функциональные возможности мультиплексора.
7. Программируемый логический блок по любому из пп. 2-6, в котором указанное множество функций обработки данных включает в себя функциональные возможности поисковой таблицы, которая имеет множество входов данных, которое больше, чем указанное второе множество.
8. Программируемый логический блок по любому из предыдущих пунктов, в котором указанный программируемый контроллер (33, 43) содержит множество LUT (438, 439) программируемого контроллера, и в котором каждый из выходов указанного программируемого контроллера соответствует соответствующему выходу одной из LUT (438, 439) указанного программируемого контроллера, причем конфигурационные входы каждой LUT указанного программируемого контроллера соединяются с соответствующим одним из указанного седьмого множества ячеек (4300) конфигурационного запоминающего устройства.
9. Программируемый логический блок по п. 8, в котором входы данных LUT (438, 439) указанного программируемого контроллера соединяются с указанным восьмым множеством входов данных указанного программируемого контроллера (432).
10. Программируемый логический блок по п. 9, в котором указанный программируемый контроллер дополнительно содержит декодер (434), выполненный с возможностью декодирования указанного восьмого множества входов (432) данных, причем указанный программируемый контроллер (33, 43) дополнительно содержит множество переключающих блоков (436, 437), каждый указанный переключающий блок (436, 437) принимает каждый из декодируемых выходов указанного декодера (434) и соответствующего указанного пятого множества указанных конфигурационных ячеек (4300, 435) запоминающего устройства, посредством чего каждый переключающий блок обеспечивает выходное значение к одному из указанных выходов, соединяющихся с каждым из указанного второго множества конфигурационных входов (312, 414) и указанного пятого множества конфигурационных входов (342, 444), соответственно, причем значение указанного выхода равно результату объединения с помощью логического «ИЛИ» логического «И» каждого указанного декодируемого выхода указанного декодера с соответствующим одним из указанного второго множества конфигурационных входов.
11. Программируемый логический блок по п. 9 или 10, в котором указанный программируемый контроллер (33, 43) имеет четыре входа данных, два из которых объединяются с двумя соответствующими входами данных каждой LUT (438, 439) указанного программируемого контроллера, и третий из указанных входов объединяется с третьим соответствующим входом каждой LUT (438, 439) указанного программируемого контроллера, выход которой соответствует конфигурационному входу указанной первой LUT (31, 41), и четвертый из указанных входов объединяется с третьим соответствующим входом каждой LUT (438, 439) указанного программируемого контроллера, выход которой соответствует конфигурационному входу указанной второй LUT (34, 44).
12. Программируемый логический блок по любому из предыдущих пунктов, в котором первый выход из указанного третьего множества выходов (313) указанной первой LUT (31, 41) соответствует любому из указанного второго множества входов (312, 414), мультиплексируемых с помощью каждого из указанного первого множества входов данных, и второй выход из указанного третьего множества выходов указанной первой LUT соответствует любому подмножеству указанного второго множества входов, мультиплексируемых с помощью подмножества указанного первого множества входов (311) данных, или первый выход из указанного шестого множества выходов (343) указанной второй LUT (34, 44) соответствует любому их указанного пятого множества входов (432, 444), мультиплексируемых с помощью каждого из указанного четвертого множества входов (341) данных, и второй выход из указанного шестого множества выходов (343) указанной второй LUT (34, 44) соответствует любому подмножеству указанного пятого множества входов (342, 444), мультиплексируемых с помощью подмножества указанного четвертого множества входов (341) данных.
13. Способ работы устройства FPGA, содержащего
первую LUT (31, 41),
вторую LUT (34, 44) и
программируемый контроллер (33, 43);
указанный способ содержит этапы, на которых:
устанавливают значения первого множества ячеек (4300, 435) запоминающего устройства, ассоциированных с указанным программируемым контроллером (33, 43);
передают разрешающий сигнал на указанную FPGA;
обеспечивают вводимые данные к указанному программируемому контроллеру (33, 43), посредством чего указанный программируемый контроллер (33, 43) устанавливает конфигурационные значения указанной первой LUT (31, 41) и указанной второй LUT (33, 43) в качестве функции от указанных вводимых данных и значений указанного первого множества ячеек (4300, 435) запоминающего устройства;
обеспечивают вводимые данные к указанной первой LUT (31, 41) и указанной второй LUT (34, 44);
указанная первая LUT (31, 41) и указанная вторая LUT (34, 44) выполняют соответствующие логические операции по отношению к соответствующим вводимым данным, обеспеченным на указанном этапе обеспечения вводимых данных в качестве функции от конфигурационных значений, установленных с помощью указанного программируемого контроллера (33, 44); и
выводят результат указанных соответствующих логических операций.
14. Способ по п. 13, в котором указанное устройство FPGA дополнительно содержит логическую схему (35, 45), и причем указанный способ содержит дополнительные этапы, на которых:
перед указанным этапом передачи разрешающего сигнала на указанную FPGA устанавливают значения второго множества ячеек запоминающего устройства, ассоциированных с конфигурационными входами указанной логической схемы (33, 43);
причем указанный этап обеспечения вводимых данных к указанной первой LUT (31, 41) и указанной второй LUT (34, 44) дополнительно содержит обеспечение вводимых данных к указанной логической схеме (33, 44);
указанная логическая схема (33, 44) выполняет дополнительную логическую операцию по отношению к выходам указанной первой LUT и указанной второй LUT в качестве функции от значений указанного второго множества ячеек (4300, 435) запоминающего устройства; и
выводят результат указанной дополнительной логической операции.
15. Поток данных конфигурирования, содержащий конфигурационные значения, выбранные для реализации способа по п. 13 или 14.