disel 0 July 18, 2007 Posted July 18, 2007 · Report post К сожелению нет. Кстати,не подскажете сигнал SBHE приходит после установки адреса порта,а в какое значение он первоначально устанавливается 0 или 1 ,т.е. какой байт будет передоваться в данный момент старший или младший? SBHE min 20 нс после спада BALE. А спад BALE минимум 130нс после установки адреса. Это по спецификации АТ96. РС104 не читал, но думаю что ISA одинакова реализована. Про значение SBHE у Гука на 154 странице. При 16-ти разрядном чтении-записи портов по четным адресам он должен быть 0. Quote Share this post Link to post Share on other sites More sharing options...
darkniisiis 0 July 18, 2007 Posted July 18, 2007 (edited) · Report post Вот засада,ещё и макет перегрелся,и почему на PCM не ставят активного охлаждения...Вот если так сделать,как думаете-пойдёт?У меня почему-то сомнения по этому поводу. library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity test_PC104 is Port ( d : inout STD_LOGIC_VECTOR (15 downto 0); a : in STD_LOGIC_VECTOR (15 downto 0); prog_clk : out STD_LOGIC_VECTOR (15 downto 0); IO_CS16 : out STD_LOGIC; SBHE : in STD_LOGIC; aen : in STD_LOGIC; ior : in STD_LOGIC; iow : in STD_LOGIC); end test_PC104; architecture Behavioral of test_PC104 is signal pr_clk : STD_LOGIC; begin pr_clk<='1' when conv_integer(a) = 63493 and aen='0' else '0'; IO_CS16<='0' when pr_clk='1' else '1'; process(SHBE) begin if SHBE='1' then if iow='0' then if pr_clk='1' then prog_clk(7 downto 0)<=d(7 downto 0); end if; end if; elsif SHBE='0' then if iow='0' then if pr_clk='1' then prog_clk(15 downto 8)<=d(15 downto 8); end if; end if; end if; end process; end Behavioral; Edited July 18, 2007 by darkniisiis Quote Share this post Link to post Share on other sites More sharing options...
disel 0 July 18, 2007 Posted July 18, 2007 · Report post У вас получилась защёлка, управляемая SBHE. Если же он не измениться, что и должно быть при нормальной 16-разрядной передачи, то ничего не произойдет. Quote Share this post Link to post Share on other sites More sharing options...
darkniisiis 0 July 18, 2007 Posted July 18, 2007 · Report post гук не скачивается,у него в названии русские буквы,скорее всего глюк из-за этого. Я просто думал что SBHE изменяется в зависимости от того какой байт передаётся,0-старший,1-младший. Quote Share this post Link to post Share on other sites More sharing options...
disel 0 July 18, 2007 Posted July 18, 2007 · Report post гук не скачивается,у него в названии русские буквы,скорее всего глюк из-за этого. Я просто думал что SBHE изменяется в зависимости от того какой байт передаётся,0-старший,1-младший. http://ifolder.ru/2707399 Quote Share this post Link to post Share on other sites More sharing options...
disel 0 July 31, 2007 Posted July 31, 2007 · Report post Вроде как адрес вообще не имеет отношения к абоненту на ИСЕ при ПДП. Вопрос: Вы как программируете контроллер ПДП у CS5530 ? По моим наблюдениям он нормально не выполняет Extended Write и Compressed Time режимы передачи. Только Normal. По умолчанию. Значит вроде бы должен стоять режим Normal. Но надо проверить, может в этом все дело. Спасибо за подсказку. Программист только в понедельник из отпуска выйдет :( лето. О результатах напишу. После того как запрограммировали командный регистр DMA вручную ( в режиме Normal), все заработало. Черт знает как биос его программирует (или линукс), видимо меняет значения по умолчанию. LMT, спасибо за помощь! :beer: Quote Share this post Link to post Share on other sites More sharing options...
LMT 0 July 31, 2007 Posted July 31, 2007 · Report post Посмотрел сегодня, Ваши симптомы были похожи на Extended Write. Странно, что BIOS/Linux выставляет этот режим. В любом случае хорошо, что заработало :) :) Quote Share this post Link to post Share on other sites More sharing options...
UserXP 0 December 24, 2008 Posted December 24, 2008 · Report post Поясните пожалуйста поведение слейва на шине при записи 16-ти разрядного числа в нечетный адрес. Как я понимаю такого быть не должно, а вдруг случится? в частности интересует сигнал IOCS16 (подразумевается что слейв 16-ти разрядный) я так понимаю что слейв должен запретить передачу двух байт за один такт? Quote Share this post Link to post Share on other sites More sharing options...
Maverick_ 17 December 24, 2008 Posted December 24, 2008 · Report post Почту глянь! я те скинул свой старый проект для ISA шины на PC104. Вопросы будут, пиши в личку ! Скиньте пожайлуста и мне свой старый проект для ISA шины на PC104. Quote Share this post Link to post Share on other sites More sharing options...
disel 0 December 24, 2008 Posted December 24, 2008 · Report post Поясните пожалуйста поведение слейва на шине при записи 16-ти разрядного числа в нечетный адрес. Как я понимаю такого быть не должно, а вдруг случится? в частности интересует сигнал IOCS16 (подразумевается что слейв 16-ти разрядный) я так понимаю что слейв должен запретить передачу двух байт за один такт? Не надо писать 16 разрядные числа в нечетные адреса, геморой и снижение производительности :) Оно происходит в два такта. Чтобы определить где находяться данные (младший\старший байт) нужно анализировать nSBHE. Очень подробно расписано у Гука, ссылка в этой теме есть. IOCS16 не зависит от того, четный адрес или нечетный. Пишите-читайте по четным адресам. IOCS16 выставляется простым дешифрированием адреса. nSBHE вообще при этом не нужен. Совсем забыл: не надо дешифрировать нечетные адреса. Проблем меньше. Quote Share this post Link to post Share on other sites More sharing options...
UserXP 0 December 24, 2008 Posted December 24, 2008 (edited) · Report post Не надо писать 16 разрядные числа в нечетные адреса, геморой и снижение производительности :) Оно происходит в два такта. Чтобы определить где находяться данные (младший\старший байт) нужно анализировать nSBHE. Очень подробно расписано у Гука, ссылка в этой теме есть. IOCS16 не зависит от того, четный адрес или нечетный. Пишите-читайте по четным адресам. IOCS16 выставляется простым дешифрированием адреса. nSBHE вообще при этом не нужен. Совсем забыл: не надо дешифрировать нечетные адреса. Проблем меньше. да я прекрасно это понимаю что не надо, но есть люди которые хотят затычку от непредвиденных ситуаций.. и при тестах на разных контроллерах шины были получены разные результаты при записи двубайтного числа по нечетному адресу... вот я и хотел уточнить этот момент, описана ли эта ситуация в стандарте на шину p.s. поковырявшись в Гуке нашел вроде нужную табличку, будем надеяться что так оно и есть на самом деле) Edited December 24, 2008 by UserXP Quote Share this post Link to post Share on other sites More sharing options...
sazh 9 December 24, 2008 Posted December 24, 2008 · Report post да я прекрасно это понимаю что не надо, но есть люди которые хотят затычку от непредвиденных ситуаций.. и при тестах на разных контроллерах шины были получены разные результаты при записи двубайтного числа по нечетному адресу... вот я и хотел уточнить этот момент, описана ли эта ситуация в стандарте на шину Это наверно еще впрямую от схемной реализации зависит. Если ваша плата выполняет 16 разрядный цикл доступа, а хотите его завершить как 8 разрядный, надо запрещать сигналы i/o cs16, или memcs16. Да еще при этом обычно при обмене словами игнорируют при дешифрации адреса sbhe и sa0. Что будет в результате обращения по нечетному адресу при обмене словами, вряд ли это у Гука описано. Quote Share this post Link to post Share on other sites More sharing options...
UserXP 0 December 24, 2008 Posted December 24, 2008 · Report post самое интересное что да, написано... и написано что делать чтобы добиться "максимальной" совместимости проверяю.. Quote Share this post Link to post Share on other sites More sharing options...
disel 0 December 24, 2008 Posted December 24, 2008 · Report post Что будет в результате обращения по нечетному адресу при обмене словами, вряд ли это у Гука описано. Офигительно все там написано. И все таки не пойму, зачем по нечетным адресам работать? Софт так написан и не может быть переделан? ___.pdf Quote Share this post Link to post Share on other sites More sharing options...
Kolia 0 April 1, 2009 Posted April 1, 2009 · Report post Дайте плиз. исходничек работающий или киньте на mail. Спасибо!! Дайте плиз. исходничек работающий или киньте на mail. Спасибо!! Quote Share this post Link to post Share on other sites More sharing options...