RHnd 0 4 марта, 2008 Опубликовано 4 марта, 2008 · Жалоба Итак, имея рабочий проект ниоса на отладочной плате, начинаю переводить его на свое железо. Первая проблема было с CFI (тема рядом) - разобрались. Едем дальше. 1) SDRAM. Стоит чип MT 48LC16M16A2 75. Из пдф на него нашел Cas latency 2 при частоте меньше 100MHz, access time 6ns, t_rcd 20ns, t_rp 20ns, t_rfc 66 ns. Есть вопрос по t_wr - если в пдф указано 1 cycle + 7.5ns, а тактовка 50 MHz, то нужно в сопсе указать 27.5 ns? Так же не нашел в пдф Initialization refresh cycles, Issue one refresh command every и delay after powerup before initialization. Плохо искал? Как назначить эти параметры? 2) Как-то странно ведет себя nios ide в плане отладчика. Выглядит это так. Для тестирования sdram создаем проект, содержащий cpu/s+jtag debugger 1, cfi, jtag-uart, sdram и onchip_memory 40 Kb, из которой и планируется проверять sdram. Reset vector направлен на cfi, exeption vector - onchip_memory. Геренируем систему в сопс, создаем в ниос-иде проект, собираем, получаем файл onсhip_memory.hex, собираем все в квартусе (7.1), зашиваем в epcs. Далее идут странности. Если из ниос иде выбрать Run As, то проект какое-то время (несколько минут) работает, после чего вылетает due to I/O error. Так же странно ведет себя Debug As - может запустится и отработать несколько комманд, после чего вылететь, а может вообще не запуститься, сказав, что verefication faild on address - адрес onchip_memory. Так же есть ощущение, что программа, загружаемая при стартапе из флешки, так же некоторое время работает и резетится, но тут точно утверждать не могу - нет толком средств наблюдения. В чем тут может быть дело? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 5 марта, 2008 Опубликовано 5 марта, 2008 · Жалоба В свое время во всех nios платах я делал мелкий on-cip memory - в нем на асме что-то типа несложного BIOS POST memory теста, результат выдавался в консоль (uart) и отмечался светодиодом - основной принцип в том что _все_ (data memory/program memory) находится внутри fpga - никаких внешних устройств памяти, on-cip memory глючить не может (при прохождении TA) - а проверка внешних устройств добавляется в данный тест по необходимости. никто не гарантирует что код из cfi считан верно, а если он не помещается в кеш, то имеем неконтроллируемый постоянный обмен с внешним устройством, что для любого теста не есть good. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RHnd 0 5 марта, 2008 Опубликовано 5 марта, 2008 · Жалоба Со вторым пунктом вопрос решился просто - оказалось, что источник питания пока стоит не тот, который должен (еще не привезли), а временный. А он, зараза, сильно грелся и минут через 5 работы начинал давать проскоки по питанию. Соответственно, ниос и перегружался. А с первым вопросом ясности еще нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 6 марта, 2008 Опубликовано 6 марта, 2008 · Жалоба 2 Harbour - а можете как начинающему чуть разжевать что такое " мелкий on-cip memory " ?? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 7 марта, 2008 Опубликовано 7 марта, 2008 · Жалоба это FPGA on-chip RAM размером for ex. 1K - nios стартует из нее, проверяет периферию (SDRAM), далее запускает c_init() Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 11 апреля, 2008 Опубликовано 11 апреля, 2008 · Жалоба по просьбам жаждущих добавил nios memtest исходник и makefile к нему, что к чему думаю разберетесь, так как я уже смутно помню - проект был в 2004 году ;) nios_test.rar Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 15 апреля, 2008 Опубликовано 15 апреля, 2008 · Жалоба 2 Harbour - пытался собрать вашим мэйк-файлом - кричит make: makefile: line 37: Error -- Include file .depend, not found Не подскажете в чём дело ? зачем ему *.depend нужен ? Пытался изменить мэйк - поулчил месагу типа `Makefile' is up to date Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 16 апреля, 2008 Опубликовано 16 апреля, 2008 · Жалоба там должна быть цель 'dep' или 'depend' - вообще makefile я дал не для компиляции а для обзора что куды линкуется, не факт что он вообще рабочий. нужно составлять makefile самому - под нокретный проект. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 16 апреля, 2008 Опубликовано 16 апреля, 2008 · Жалоба 2 Harbour - а не подскажете , где можно найти что нибудь почитать по ассемблеру для ниоса ? Понимаю что плохо искал, но как то не нашёл... :smile3046: ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 17 апреля, 2008 Опубликовано 17 апреля, 2008 · Жалоба я кроме оригинального справочника по ассемблеру, от альтеры, ничего не читал/не знаю Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 17 апреля, 2008 Опубликовано 17 апреля, 2008 · Жалоба 2 Harbour - понимаете, я никак не пойму как стыкуюся конструкции вида nm_printchar '\r' nm_print "RAM test at 0x" В принципе далее идёт bsr nr_uart_txhex так что вроде бы комманды nm_xxx должны формировать строку которую в nr_uart_txhex и отправляют, но вопрос - а как это они так хитро делают ?? И вопросик который меня мучит давно - касательно корректного перехода к скопированному участку программы. У вас это я так понял это - movia %g0, na_ram@h jmp %g0 nop Ноп я так понял нужен для места, главное тут - это загрузка в регистр %g0 адреса начала рама - na_ram - и просто переход по этому адресу. И собсно это и есть так сказать передача управления от загрузчика к исполняемому коду? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 18 апреля, 2008 Опубликовано 18 апреля, 2008 · Жалоба следует для начала изучить nios-sdk, там много полезного для начинающих можно почерпнуть - for ex. если глянуть в начало файла nios32_sdk/lib/uart_txhex.s, то можно увидеть следующее : ....... ;---------------------------------------- ; Name: nr_uart_txhex ; Description: Print value in hexadecimal ; Input: %o0 = value to be printed ; Output: none ; Side Effects: %g0 & %g1 altered, %o1 used for uart base ; CWP Depth: 1 ......... насчет перехода - как я уже говорил, все зависит от карты памяти конкретнго проекта - главное, действительно, куда нибудь в конце концов перейти ;) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 18 апреля, 2008 Опубликовано 18 апреля, 2008 · Жалоба 2 Harbour - я бы даже не против, только имеются некоторые нъюансы: я не нашёл у себя вообсче директории nios32_sdk(или вообсче похожей) - ставил NIOS 7.2 EDS. Это что - отдельно надо ставить сдк( если да - подскажите где )? :smile3046: (похоже что так - http://www.altera.com/support/ip/processor...y-er-intro.html - "SDK support is not available in Nios II Embedded Design Suite (EDS) version 6.0 and later. ") - Будьте так добры - поделитесь пожалуста.. Касательно makefile - у меня тут неоднозначность на 1-м компъютере выдаёт "make не является внутренней или внешней командой, исполняемой программой или пакетным файлом." А на 2-м - типа всё ок мэйком , но строка типа nios-build –b 0x140000 flash_copy.s ( http://www.altera.ru/Disks/Altera%20Docume...ec_to_flash.pdf ) вызывает реакцию "nios-build" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Может кто подскажет куда копать ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 19 апреля, 2008 Опубликовано 19 апреля, 2008 · Жалоба директория nios_sdk32 генерилась sopc_builder'ом в процессе синтеза системы. для новых версий это видимо теперь называется HAL - проектов на новом (без SDK) nios'е у меня еще не было, посему не разбирался. то же относится и к codegen'у - в edk есть директория, где лежат gnu утилиты для nios - путь к ней укажите. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 19 апреля, 2008 Опубликовано 19 апреля, 2008 · Жалоба Нашёл решение - :08: "NIOS II Command Shell.bat" называется - оно собсно и запускает среду что ли, где это всё мона билдить :smile3046: Как пример ( может кому на будущее) мэйкфайла - смотрел в сторону an458 документов с сайта альтеры и инструкшн-сета для ниос2 процессора.... :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться