Ну, это возможно, потому что функция наверняка основана на ddr_io, а они наверное имеются не во всех IOE. А я для DDR взял и просто сделал шину на удвоенной частоте, в итоге для нее подходят любые IOE, для которых имеется fast i/o регистр. Но это почти все IOE и есть, за исключением всяких там dedicated clocks.
А вот такой несколько отвлеченный вопрос: у Вас не возникало ощущения, что Альтера пошла по какому-то не очень правильному пути с точки зрения системотехники? Сейчас поясню, что я имею ввиду.
Когда-то, когда я только начинал работать с ПЛИС, фирма Альтера еще только зарождалась. Тогда мы работали с интеловскими FPGA, семейством FlexLogic. Это были первые именно FPGA, а не CPLD, и, кроме того, это были первые FPGA, которые имели встроенную оперативную память, достаточно быстродействующую по тем временам. Именно с этого семейства Альтера и начала свой путь в FPGA, когда купила на корню все это у Интел и перелицевала встроенную EEPROM на FLASH, переименовав в итоге FlexLogic во FLASHLogic. И именно с появлением FPGA со встроенной памятью зародился вообще новый подход в вычислительной технике, потому что появилась возможность строить специализированные вычислители с производительностью, недоступной средствами обычных процессоров. Одним из преимуществ нового подхода стало то, что появилась дополнительная степень свободы, связанная с размещением выводов. С системотехнической точки зрения это позволило разделить труд схемотехников, конструкторов и программистов на разные, практически не зависимые друг от друга задачи. Ну самое страшное, что могло произойти, это надо было конструктору просто сообщить схемотехнику, что он хочет изменить порядок выводов у ПЛИС и обновить принципиальную схему. Учитывая, что частенько схемой и разводкой занимается один человек, это вообще не проблема. И во всяком случае программист мог садиться за проект, имея перед собой уже собранную плату. Но вот потом началось... Сначала появились банки питания, потом к ним добавились банки VREF, потом еще на все это нанесли пары LVDS, потом еще группы DQ-DQS, потом еще возникли токовые ограничения и шумы в цепях питания. И в итоге мы имеем уже не просто проблему переназначения выводов. В итоге получается, что для того, чтобы правильно нарисовать схему, нужно создать проект для FPGA, скомпилировать его, и, получив благословение от Quartus, только начинать приступать к уточнению схемы. То есть, теперь программист FPGA оказывается не завершающей, а чуть ли начинающей стадией проектирования. И в конечном итоге это начинает сильно тормозить процесс проектирования системы в целом по сравнению со старым, прямым способом взаимодействия профессий.
Вот мое мнение заключается в том, что это неправильный путь. Куда спокойнее проектировать в стиле "вот спаяем железку по даташитам, проверим, будем о полной программе думать". А с этими ALTMEMPHY выходит, что пока программу почти полностью не напишешь и не убедишься, что она компилируется, толком даже схему не нарисовать с правильными пинами.
|