Цитата(m0use @ Sep 16 2010, 00:55)

Выходит, Вы говорите, что на уровне кода необходимо дробить операции?
алгоритм в структурном исполнение состоит из (в общем случае) их путей прохождения данных. пути состоят из промежуточных хранилищ(например регистров) и комбинаторной блоков комбинаторной логики, которые осуществляют эффективное преобразование потока данных (еслественно, что пути данных не обязательно линейны и однонаправленны, они могут иметь обратные связи, пересекаться и расходиться при помощи коммутирующих элементов, хотя коммутирующие элементы тоже суть комбинаторика/фактически мультиплексоры - это пересечение потока данных и условного потока управления/)
при установившемся и постоянном потоке данных в синхронном цифровом дизайне производительность системы тем выше, чем выше тактовая частота тактируемых в пути данных регистров (зы: для чисто управляющих систем это немножко не так, точнее тоже так, но там приоритеты другие - важна скорость отклика) частота тактирования может быть тем выше, чем меньше время распространения сигнала от одного регистра до соседнего, следовательно макс. частота опред. наибольшей задержкой распр. данных между регистрами. т.о. нужно стремится, чтобы кмбинаторная логика была равномерно размазана между слоями регистров.
более того, если комбинаторная функция зависит не только от предыдущего состояния системы(просто пример - сравнение с накопленной за несколько шагов суммой), но и от более ранней истории состояний, сложность комбинаторики возрастает нелинейно (зависимость от кол-ва операндов и кол-ва состояний). поэтому разумно произвести эквивалентное преобразование, которое разобьёт вычисление на несколько шагов с сохранением промежуточных результатов вычисления (так и появляются автоматы состояний - хотя почти любой считающий автомат можно разложить на параллельную комбинаторику, сложность этой комбинаторики будет настолько сложной, что электроны умрут от старости, пока будут бежать от одной ступени конвейера до другой, поэтому целесообразней создать автомат, который бу работать последовательно, но с малым вр. исп. операции).
ну вот примерно так. надеюсь не слишком сложно объяснил, чтобы что-то полезное из этого сообщ. для себя извлечь
ЗЫ: картинку des333 подобрал на редкость неудачную - смотреть и вникать на её нижнюю часть строго воспрещается, т.к. она описывает технику вычисления волной (где тактирующий сигнал распространяется вместе с потоком данных)
если что-то не понятно из объяснения - спрашивайте, попробую переформулировать в более понятной манере
удач
Цитата(m0use @ Sep 16 2010, 00:55)

Я ещё попробую использовать память, если не поможет, то обращусь за такой помощью. Просто представляю, какой это труд в чужом коде разбираться, да ещё ошибки искать.
да вы не беспокойтесь - никто через чур напрягаться здесь не будет. если будет слишком плохо накодировано - пошлют в библиотеку учиться