СОВРЕМЕННАЯ ЭЛЕКТРОНИКА №2/2012

ПРОГРАММИРОВАНИЕ нулевой сдвиг данных относительно тактового сигнала, блоки IODELAY удерживают сигнал BUSY в активном состоянии. По количеству линий дан ных – 16, – этих сигналов также шест надцать. Логическое ИЛИ всех сигна лов BUSY из модуля sopc передаётся в модуль ddr_init_fsm в виде сигнала io_busy_i. Конечный автомат в состоя нии DDR_I_CLB ожидает деактивации сигнала io_busy_i, т.е. момента време ни, когда все 16 линий данных устано вят нулевую задержку данных. После того как сигнал io_busy_i становится равнымнулю, процесс инициализации памяти считается законченным, и ко нечный автомат переходит в состоя ние DDR_I_DONE, в котором он оста ётся до следующего системного сброса. При этом активируется основной ко нечный автомат ddr_fsm, запускается основной счётчик времени ddr_count (в модуле ddr3_top), имультиплексоры адреса и команд также переключаются на основной конечный автомат. О СНОВНОЙ КОНЕЧНЫЙ АВТОМАТ Этот автомат выполняет все основ ные операции взаимодействия с па мятью. Его исходный код находится в файле ddr_fsm.v, а блок схема состоя ний изображена на рисунке 4. Конечный автомат контроллера име ет те же состояния, что и автомат памя ти, полная схема которого приведена в [1]. Однако автомат контроллера содер жит только необходимый минимум, достаточный для функционирования памяти – из операций чтения и запи си реализованы варианты с предзаря дом (WRAP – Write with Auto Precharge, RDAP – ReaDwith Auto Precharge). После завершения инициализации основной конечный автомат начинает свою работу в состоянии DDR_IDLE, ожидая дальнейших команд от кон троллерашиныWishbone илиот основ ного счётчика. Запросы на регенера цию памяти поступают от счётчика с периодичностью T_REFI. При этом ав томат переходит сначала в состояние DDR_REF. В этом состояниипамяти вы даётся команда OP_PRE (precharge) – закрытиеипредзаряд активныхбанков. 69 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 2 2012 DDR_ RDAP ref_req_i DDR_ ACT_P DDR_ REF DDR_ REF1 DDR_ IDLE DDR_ ACT DDR_ WRAP next_state = 2’b10 ~ref_req_i rd_flag || wr_flag next_state = 2’b01 rd_flag wr_flag next_state = 2’b10 next_state = 2’b11 Рис. 4. Основной конечный автомат 14 Семинар Analog Devices Inc. по DSP 29 марта 2012г. DSPA - 2012 Москва 28 - 30 марта 2012 г. Реклама © СТА-ПРЕСС

RkJQdWJsaXNoZXIy MTQ4NjUy