OpenRISC 1200 - OpenRISC 1200

Блок-схема архитектуры процессора OR1200

В OpenRISC 1200 (OR1200) является реализацией Открытый исходный код OpenRISC 1000 RISC архитектура [1].

А синтезируемое ядро ​​процессора, многие годы его поддерживали разработчики OpenCores.org, хотя с 2015 года эту деятельность теперь взяла на себя Кремниевый фонд с открытым исходным кодом на librecores.org интернет сайт. Описание Verilog RTL выпущено под Стандартная общественная лицензия ограниченного применения GNU (LGPL).

Архитектура

Блок-схема процессора / DSP OR1200

В IP ядро OR1200 реализован в Verilog HDL. Как ядро ​​с открытым исходным кодом, дизайн является полностью общедоступным и может быть загружен и изменен любым лицом. Официальная реализация поддерживается разработчиками на OpenCores.org. Реализация определяет блок управления питанием, блок отладки, тиковый таймер, программируемый контроллер прерываний (PIC), центральный процессор (CPU) и оборудование для управления памятью. Периферийные системы и подсистема памяти могут быть добавлены с использованием процессорной реализации стандартизированной 32-битной Wishbone шинный интерфейс. OR1200 должен иметь производительность, сравнимую с ARM10 архитектура процессора.

CPU / DSP

ЦП OR1200 - это реализация 32-битной ORBIS32. архитектура набора команд (ISA) и (опционально) ORFP32X ISA, реализующие IEEE-754 совместимая поддержка чисел с плавающей запятой одинарной точности. ISA имеет пять форматов команд и поддерживает два режима адресации: регистровая косвенная со смещением и относительная программа-счетчик. Реализация имеет 5-этапный конвейер с одной проблемой и способна выполнять один цикл для большинства инструкций. ЦП также содержит MAC единица для лучшей поддержки цифровая обработка сигналов (DSP) приложения.

Управление памятью

В конструкции OR1200 используется Гарвардская архитектура памяти и поэтому имеет отдельный блоки управления памятью (MMU) для памяти данных и инструкций. Каждый из этих MMU состоит из одностороннего прямого отображения на основе хэшей. резервный буфер перевода (TLB) с размером страницы 8 KiB и размер по умолчанию 64 записи. TLB индивидуально масштабируются от 16 до 256 записей. Существует также одностороннее прямое отображение тайник каждый как для памяти команд, так и для памяти данных. Каждый кеш имеет размер по умолчанию 8 KiB, но оба можно масштабировать по отдельности от 1 до 64 KiB. MMU включает поддержку виртуальной памяти.

Спектакль

Ядро достигает 1,34 CoreMarks на МГц при 50 МГц по технологии Xilinx FPGA.[1]

В худшем случае тактовая частота OR1200 составляет 250 МГц при производстве 6LM 0,18 мкм. С использованием Дристон в тесте, процессор OR1200 с тактовой частотой 250 МГц выполняет 250 Dhrystone миллионы инструкций в секунду (DMIPS) в худшем случае. Расчетное энергопотребление процессора 250 МГц при 0,18 мкм процессе составляет менее 1 Вт при полном газе и менее 5 мВт при половинном давлении.[нужна цитата ]

Приложения

Как правило, OR1200 предназначен для использования во множестве встроенных приложений, включая телекоммуникации, портативные носители, домашние развлечения и автомобильные приложения. В Набор инструментов GNU (включая GCC ) также был успешно перенесен в архитектуру, хотя и не свободен от ошибок.[2] Есть порт Ядро Linux для OR1K, который работает на OR1200. Последние порты встроенных библиотек C newlib и uClibc также доступны для платформы.

Реализации

OR1200 успешно реализован с использованием FPGA и ASIC технологии.

История

Первый публичный отчет об архитектуре OpenRISC 1000 относится к 2000 году.[3]

Рекомендации

внешняя ссылка