Просмотр полной версии : Spectrum 48 на 2x XILINX XC9572-15
ILoveSpeccy
05.05.2007, 14:13
Ну вот, решил для своего творения отдельную тему создать.
Вот, за основу решил взять схему от ReSpecT-2.
Как посоветовал fan, в одной матрице будет синхрогенератор, во второй видеоконтроллер.
Так как я еще не совсем разбираюсь в работе Speccy
то у меня есть вопрос:
Как мне правильно передать сигналы для работы видеоконтроллера из одной матрицы в другую?
Имеются ввиду значения Ver_Cnt и Hor_Cnt...
-- VRAM routine
process( CLK )
begin
if CLK = '1' then
if Paper = '1' then
if ChrC_Cnt = 5 and Tick = '0' then
VideoRead <= '1';
VideoRead1 <= '1';
elsif ChrC_Cnt = 5 and Tick = '1' then
VideoRead2 <= '1';
VA <= std_logic_vector( "0110" & Ver_Cnt(4 downto 0) & Hor_Cnt(4 downto 0) );
elsif ChrC_Cnt = 6 and Tick = '0' then
VA <= std_logic_vector( "0" & Ver_Cnt(4 downto 3) & ChrR_Cnt & Ver_Cnt(2 downto 0) & Hor_Cnt(4 downto 0) );
elsif ChrC_Cnt = 6 and Tick = '1' then
VA <= ( others => 'Z' );
VideoRead1 <= '0';
elsif ChrC_Cnt = 7 and Tick = '0' then
VideoRead <= '0';
VideoRead2 <= '0';
end if;
end if;
end if;
end process;
Потом, если все получится, то хочу собрать что-нибудь нормальное на XC95144XL в корпусе TQFP100. Только вот незнаю как это дело паять :v2_rolley .
KingOfEvil
05.05.2007, 22:12
Ну вот, решил для своего творения отдельную тему создать.
Вот, за основу решил взять схему от ReSpecT-2.
Как посоветовал fan, в одной матрице будет синхрогенератор, во второй видеоконтроллер.
А на одной cpld нельзя? 48к движок прекрасно влезет в 7128 вместе со всеми наваротами, останется только довесить ram, cpu и rom. Итого 4..5 микросхем + их обвязка и много-много радости.
Как мне правильно передать сигналы для работы видеоконтроллера из одной матрицы в другую?
Имеются ввиду значения Ver_Cnt и Hor_Cnt...
Я прально понял что нужно лишь передать значения дешифраторов торчащих на Ver_Cnt и Hor_Cnt ?
Потом, если все получится, то хочу собрать что-нибудь нормальное на XC95144XL в корпусе TQFP100. Только вот незнаю как это дело паять .
На самом делеле это проще пареной репы . Самое сложное поставить чип ровно на контактные площадки ;) Далелее замазываем ножки канефолью (растворённой в спирте) ооооочень жирным слоем (в несколько проходов). Чтоб чип не убежал припаиваем несколько крайних ножек на каждой стороне так лево как умеем . Далее так же припаиваем все остальные ножки . В результате такого бэзпредела будет туча слипшихся ножек (это нормально ;) ). Устроняются сопли на ножках с помощь спец многожильной проволоки(медная не лужёная пропитанная канифолью) для отпаивания - solder wick(паяльный тампон :D) aka soldering remover . Для данного процесса желательно применять паяльник с жалом аля отвёртка . А так же перед процессом снятия соплей нужно сново нанести жирный слой канефоли .
............. Для данного процесса желательно применять паяльник с жалом аля отвёртка . А так же перед процессом снятия соплей нужно сново нанести жирный слой канефоли ...........
На самом деле все проще....
Береццо паыяльная паста "Паста для пайки SMD компонентов" ( в любой лавке продаеццо ),жирно мажеццо.
Потом паяльник а ля отвертка,тольк не широкая.... на нее берешь немного олова,макаяшь пояльник в обыкновенную канифоль,и,неторопясь,но и не медленно с 1 по 25 ногу ведешь не останавливаясь ( движение вдоль корпуса ) но по краю ног. как бы жалом и на ногах и на печати...при нормальновыбранной температуре,наманой пасте,наманой затоочке жала - у тебя не долджно быть соплей воопщче.
Но,правда,для этого должна быть кой какая сноровка....:v2_wink:
Несколько лет на военном заводе,несколько тысяч ( а может десятков ) распаяных планарных микросхем 133 и 533 серии дают о себе знать....:v2_thumb:
ILoveSpeccy
06.05.2007, 02:06
Я прально понял что нужно лишь передать значения дешифраторов торчащих на Ver_Cnt и Hor_Cnt ?
Попробовал... оказывается не все так просто... Передавать оба значения в другую матрицу могу по 12 проводам (2 х 6 бит). Может существуют способы проще???
А на одной cpld нельзя? 48к движок прекрасно влезет в 7128 вместе со всеми наваротами, останется только довесить ram, cpu и rom. Итого 4..5 микросхем + их обвязка и много-много радости.
К сожалению с Альтерами у нас тяжело.
Xilinx есть со 108 ячейками, но найти не могу, а 144 ячейки только в TQFP
А кто нибудь пробовал платы для таких микрух сам делать???
KingOfEvil
06.05.2007, 22:58
К сожалению с Альтерами у нас тяжело.
Xilinx есть со 108 ячейками, но найти не могу, а 144 ячейки только в TQFP
Ну и не проблема. Или у вас с изготовлением плат тоже тяжело???
А кто нибудь пробовал платы для таких микрух сам делать???
Сам видел плату, сделанную ЛУТом под м/сх с шагом 0.635. И знаю лично маньяка, котороый такие платы умеет делать. Но, как он говорит, проще заказать, потому как ЛУТ очень трудоемкое занятие. Уходит несколько дней, чтобы сделать сложную плату аккуратно.
К сожалению с Альтерами у нас тяжело.
Xilinx есть со 108 ячейками, но найти не могу, а 144 ячейки только в TQFP
Кто сказал? Пожалуйста, conrad.de или rs-components.de (например http://www.rsonline.de/cgi-bin/bv/rswww/searchBrowseAction.do?N=4294665892&name=SiteStandard&callingPage=/jsp/search/search.jsp&BV_SessionID=@@@@0839891614.1178541793@@@@&BV_EngineID=cccfaddklgfmgikcefeceeldgkidhgi.0&cacheID=denetscape&Nr=avl:de), только вот все эти цплд зело мелкие и дорогущие, посему мой совет, забей на них. В reichelt (за всеми подробностями в ПС) "лежат" третьи спартаны за 12 евро на 50К вентелей, есть в QFP100 и есть в QFP144 (упомнятуый MAX7128 самый тромозной стоит больше). Да, распаять будет сложнее, но не сложнее, чем ту же XC95144 (на крайняк попробуй в любой телемастерской спросить), зато полигон для экспериментов огромный. А ещё лучший совет - купи борду :) В ebay иногда проскальзывают, уходят где-то за 60-90 евро.
ILoveSpeccy
08.05.2007, 02:56
Ну и не проблема. Или у вас с изготовлением плат тоже тяжело???
Да с платами проблем нет, только 30EUR за плату я отдам когда разберусь с работой Speccy и когда разводка окончательно будет готова... А пока, для тестов, утюгом катать или фоторезист.... Впереди еще флопик и GS.... Да и вообще, пока рановато...
В reichelt (за всеми подробностями в ПС) "лежат" третьи спартаны за 12 евро на 50К вентелей, есть в QFP100 и есть в QFP144 (упомнятуый MAX7128 самый тромозной стоит больше). Да, распаять будет сложнее, но не сложнее, чем ту же XC95144 (на крайняк попробуй в любой телемастерской спросить), зато полигон для экспериментов огромный.
Спасибо за книги!!! Та, что про VHDL очень хорошая.... Нашел еще пару других.... Короче учу :v2_wacko:
Я про Спартан уже думал, но он с пятивольтовыми пегелями не работает а эмулировать Z80 крутости прока не хватает :v2_blush:
Короче заказал только что XC95144XL в TQFT100 корпусе за 9,50EUR.
Буду дерзать....
p.s. Ты пробовал T80 (http://www.opencores.org/cvsweb.shtml/t80/rtl/vhdl/)на спартане???
Да с платами проблем нет, только 30EUR за плату я отдам когда разберусь с работой Speccy и когда разводка окончательно будет готова... А пока, для тестов, утюгом катать или фоторезист.... Впереди еще флопик и GS.... Да и вообще, пока рановато...
Это где ты за 30 увидел? Покажи сладкое место :) Я в своё время искал, двустороние с маской не ниже 45 были.
Спасибо за книги!!! Та, что про VHDL очень хорошая.... Нашел еще пару других.... Короче учу :v2_wacko:
Именно VHDL? Монстр :v2_thumb: Я когда почитал про верилог, сразу убежал от VHDL :)
Я про Спартан уже думал, но он с пятивольтовыми пегелями не работает а эмулировать Z80 крутости прока не хватает :v2_blush:
Ну возьми второй, они там тоже есть. Тока дороже чуток. Зато забудешь до поры до времени об экономии вентелей.
Короче заказал только что XC95144XL в TQFT100 корпусе за 9,50EUR.
Буду дерзать....
Поглядывай в ebay. Там иногда проскакивают камни. Кстати, могу подарить один-два XC4000. Тока это старые камни, зело старые. Вроде как с 6-й ISE поддержки нету для них, надо на сайте Xilinx старую версию ISE брать (они там есть).
p.s. Ты пробовал T80 (http://www.opencores.org/cvsweb.shtml/t80/rtl/vhdl/)на спартане???
Нет ещё, но пробовал камрад alexfreed (вот здесь http://zx.pk.ru/showthread.php?t=2410). Стукнись к нему, он тебе код даст целого Спектрума, погоняешь в ISE. Или на его сайте должен быть код вроде. Короче его пытай.
ЗЫ: Всё таки подумай о приобритении борды, очень ускореят процесс (если детей и жён под боком нет, как у меня :v2_laugh: )
ILoveSpeccy
13.05.2007, 01:49
Может кто подскажет:
какое напряжение (3.3V или 5V) надо подавать на VCC-pin JTAG-кабеля???
С 5-вольтовым чипом подавал 5V. Теперь чип на 3.3V....
KingOfEvil
14.05.2007, 03:00
Может кто подскажет:
какое напряжение (3.3V или 5V) надо подавать на VCC-pin JTAG-кабеля???
С 5-вольтовым чипом подавал 5V. Теперь чип на 3.3V....
Смотря кто сидит на другом конце кабеля. Если байтбластер - то не важно (точнее, чем питается ПЛИС, тем и он). Если нечто иное - надо смотреть его схему.
ILoveSpeccy
18.05.2007, 21:24
Добыл несколько штучек 7128 от Альтеры :v2_smile:
Можно ли использовать JTAG-кабель от Xilinx для чипов Altera???
Или теперь мне и ByteBlaster собирать надо? :confused:
KingOfEvil
18.05.2007, 21:26
Добыл несколько штучек 7128 от Альтеры :v2_smile:
Можно ли использовать JTAG-кабель от Xilinx для чипов Altera???
Или теперь мне и ByteBlaster собирать надо? :confused:
Если покажешь его схему, то скажу можно, или нет.
Хотя байтбластер собирается за 2 часа.
ILoveSpeccy
18.05.2007, 21:28
Вот.... http://www.xilinx.com/support/programr/files/0380507.pdf
Вот.... http://www.xilinx.com/support/programr/files/0380507.pdf
По мойму те же эти.только в профиль....:D
KingOfEvil
18.05.2007, 21:55
По мойму те же эти.только в профиль....:D
Не, не пойдет вместо Byteblaster. Там немного (точнее, совсем) не так. Но, может, Quartus и такой программатор поддерживает, хз.
ILoveSpeccy
18.05.2007, 22:07
Благодарю..... Надо просто попробовать будет......
Если что получится (или не получится :) ) напишу.....
KingOfEvil
19.05.2007, 00:03
Благодарю..... Надо просто попробовать будет......
Если что получится (или не получится :) ) напишу.....
Посмотрел настройки в своём квартусе - поддерживает только byteblasterMV, byteblaster II, masterblaster, ethernetblaster.
ILoveSpeccy
19.05.2007, 03:19
Ну вот и первое включение :v2_smile:
Только что-то :(
Каждый раз после RESET картинка немного меняется...
Идей пока никаких..... спать охота :sleep:
Кстати.... все на макетке с кучей проводов...
Подскажите..... с чего начинать наладку...... :confused:
p.s. border пока не использую поэтому черный :)
ILoveSpeccy
19.05.2007, 18:55
Повозился со своим творением... результатов пока нет..... :mad:
Изучал схемы разных клонов.. и созрела у меня пара вопросов к знающим железячникам:
Где и какой емкости ставить конденсаторы??? Может есть какое-нибудь правило???
Обязательно ли притягивать шины Aдресную и Данных к VCC??? На разных схемат это сделано поразному...
Я думаю что проблема скрыта какраз в этом...
Очень хочу увидеть на экране "(c)1982 Sinclair Research Ltd." :v2_smile::v2_smile::v2_smile:
ILoveSpeccy
29.05.2007, 23:59
:v2_yahoo::v2_yahoo::v2_yahoo:
Наконец-то запустил я свой первый в моей жизни самодельный спектрум
:v2_cheer:
Xilinx XC95144XL (3.3V), Z84C00-10, W29C020, 2 х Mosel 62256, 2 х 74HCT245...
И сразу-же возникло 2 вопроса.....
1. Как расширить 48К до 128К.... ????
2. Как или в каких программах можно увидеть разницу нормального и безвайтового варианта Speccy???
(мой Speccy наподобие ReSpecT)
Неверим :)))
Давай фотки...
1. Как расширить 48К до 128К.... ????
Бррр . Чёто я не могу найти простенькую схемку , есть уже извращённая которую ты уже видел в респекте (блок схема матрицы).
Собсно для начала нужно разобраться с видео страницами , в одной 62256 их как раз две (этого достаточно чтоб реализовать четырёх битные режимы 256x192 , 256x224 , 256x256 , 320x200) . Прежде всего нужно отловить обращение к VRAM 62256 (как со стороны проца, так и со стороны ВК), чтоб подтыкать VRAM и рубить RAM .
Далее нужно выловить к какой странице VRAM идёт обращение , чтоб рулить старшей адресной ножкой VRAM .
Вроде всё .
2 ILoveSpeccy
Отлично. После расширения до 128K, подключения AY и реализации TAPE IN/OUT я бы собрал для себя такую штучку. Давно мечтал о Спеке 128К + AY на CPLD без всяких дополнительных наворотов.
ILoveSpeccy
30.05.2007, 17:32
Ну в общем вот фотки...
Все утюгом накатано :) включая TQFP-адаптер...
p.s. Такой прикол... Размер одного знакоместа на телевизоре 22mm x 22mm :D
2 ILoveSpeccy
Можеш выложить всю инфу по твоему Speccy?
Ток так по подробней, для чайника :D
Plizzz
ILoveSpeccy
30.05.2007, 19:36
2 ILoveSpeccy
Можеш выложить всю инфу по твоему Speccy?
Ток так по подробней, для чайника :D
Plizzz
Как все подготовлю (схему, pcb, исходники), сразу выложу...
Все утюгом накатано включая TQFP-адаптер...
Какой принтер использовался ?
ILoveSpeccy
31.05.2007, 21:25
Какой принтер использовался ?
HP LaserJet 1018...
Первый раз этот адаптер где-то с 10-12 раза получился :D
Первый раз этот адаптер где-то с 10-12 раза получился
А каков рецепт последнего удачного пирожка ? А то по фотке просто супер выглядит .
Ну в общем вот фотки...
Все утюгом накатано :) включая TQFP-адаптер...
p.s. Такой прикол... Размер одного знакоместа на телевизоре 22mm x 22mm :D
Синклер на плазме 42" - это зачот!:eek::v2_clap2:
ILoveSpeccy
07.06.2007, 11:36
А каков рецепт последнего удачного пирожка ? А то по фотке просто супер выглядит .
Да рецепта как такового еще нет. Сам не понял как получилось... :v2_biggr:
Все стандартно. Только температуру утюга подбирал и утюгом практически вообще не давил.
Да и вообще много рецептов перепробовал и все поперемешал.
Синклер на плазме 42" - это зачот!
Просто телека другово нема :v2_tong:
А на PC через TV-карту тестирую.
Приложил свежую фотку клавиатуры. (Всю ночь делал :v2_slee2:)
PS2 пока еще немогу подключить а ждать тоже уже не в моготу...
Вроде работает... Ща еще на вход с магнитофона для загрузки замутить надо....
ILoveSpeccy
07.06.2007, 13:26
И еще... у меня выход на ТВ прямо из CPLD через резюки по 470 ом.
Когда к плазме подключал, соеденял SYNC, R, G и B еще раз через 1,2К резюки и подавал на Composite. Теперь хочу нормально через SCART попробовать.
Как это правильно сделать? Просто каждый цвет и синхросмесь напрямую из CPLD в SCART через 470ом резюки?
А... вот еще что... CPLD на 3.3В... соответственно на выходах SYNC,R,G и B 3.3В а не 5В.
ILoveSpeccy
23.06.2007, 20:18
А каков рецепт последнего удачного пирожка ? А то по фотке просто супер выглядит .
Сегодня с первого раза получилось!!! :v2_yahoo:
Это адаптер с TQFP144 на 2.54mm для Xilinx Spartan 2
Теперь технология отлажена.... (ну или почти отлажена :D)
Думаю маленькую статейку для интересующихся сбацать!
Приложил свежую фотку клавиатуры. (Всю ночь делал :v2_slee2:)
PS2 пока еще немогу подключить а ждать тоже уже не в моготу...
Вроде работает... Ща еще на вход с магнитофона для загрузки замутить надо....
А что за чип на клаве?
Зачем?
А синенькое что это?
А плятка маленькая рядом?
ILoveSpeccy
25.06.2007, 11:50
А что за чип на клаве?
Зачем?
Это 74HCT245, открывается при открытии порта клавы на чтение. Просто сначала я хотел подключить PS2 (что и сделаю, когда CPLD на FPGA заменю :) ).
А синенькое что это?
Это глупость маленькая была :D регулятор громкости для магнитофонного входа :rolleyes:. Сейчас заменил эту "порнографию" на это (смотрите фотку снизу!)
А плятка маленькая рядом?
Кнопка "RESET" c 10K резюком и конденсатором... Хотел на плате клавы разместить, но когда плату разводил - забыл :v2_tong:
Думаю маленькую статейку для интересующихся сбацать!
Адабрям :D
ILoveSpeccy
25.06.2007, 20:30
Так как дело медленно близится к завершению... моего первого полноценного клона хотел спросить:
1. Как лучше (с точки зрения совместимости с софтом) сделать дешифрацию портов??? ПОЛНУЮ или ЧАСТИЧНУЮ (например А="хххххххх11111110" или А0 = "0" для клавы)???
2. Всетаки хочу сделать совместимость с несколькими клонами! Думал взять W29C040 с несколькими прошивками и переключаться между ними верхними адресами флэшки! Сложно ли самому написать маленькую прошивку с которой комп стартуется при включении и в ней выбирать, с каким клоном включить совместимость??? Я в программировании Z80 вообще непонимаю (надеюсь пока :))
3. Какие существуют способы избавиться от WAIT при обращении процессора в видеопамять??? Хотя бы для режима 3.5МГц...
Сейчас развожу новую плату... Планирую:
* Z84C0010 с режимами 3.5 и 7МГц
* 1Мб статического ОЗУ (2 х 628512)
* W29C020 или W29C040 ПЗУ
* Поддержку совместимости с наиболее популярными клонами.
* AY
* цифровой и аналоговый входы/выходы для загрузки/записи на магнитофон. Цифровой для таких устройств как ZX FlashTaper by DVS (Думаю качество передачи данных еще лучше будет)!
* Поддержку NEMO IDE и DivIDE для подключения HDD или CompactFlash
* контроллер PS2 клавиатуры
* 2-3 слота NEMO BUS!!!
Плата будет односторонняя, для легкого повторения.
Если получится, то плата будет в формате MiniATX!!!
Всё, включая все иходники, будет опубликовано тут!!!
KingOfEvil
26.06.2007, 12:06
1. Как лучше (с точки зрения совместимости с софтом) сделать дешифрацию портов??? ПОЛНУЮ или ЧАСТИЧНУЮ (например А="хххххххх11111110" или А0 = "0" для клавы)???
Порт fe обязательно должен иметь неполную дешифрацию (только по A0), иначе не будет работать механическая клавиатура.
Порт 7ffd, видимо, тоже, т.к. желательно, чтобы работали команды out (fd),a.
A вообще, если грамотно сделана работа с цепочкой IORQ, то никаких проблем с портами не будет. Однако, есть только 2 человека, которые делают это грамотно...
ILoveSpeccy
26.06.2007, 14:39
A вообще, если грамотно сделана работа с цепочкой IORQ, то никаких проблем с портами не будет. Однако, есть только 2 человека, которые делают это грамотно...
А можно поинтересоваться, ГРАМОТНО это как?
Например я делаю это так:
if A0 = '0' and IORQ = '0' and RD = '0' then
FE <= '1'; -- Чтение из порта FE
else
FE <= '0';
end if;
KingOfEvil
26.06.2007, 16:50
А можно поинтересоваться, ГРАМОТНО это как?
Описано в теме ZXMC
3. Какие существуют способы избавиться от WAIT при обращении процессора в видеопамять??? Хотя бы для режима 3.5МГц...
Глянь такой вариант - "Скажем скальпелю нет!!!" http://zx.pk.ru/showthread.php?t=2768 .
Даже самый невменяемый видео режим не будет ступорить проц .
ILoveSpeccy
27.06.2007, 21:08
Глянь такой вариант - "Скажем скальпелю нет!!!" http://zx.pk.ru/showthread.php?t=2768 .
Даже самый невменяемый видео режим не будет ступорить проц .
А может у кого-нибудь есть файлы, которые в этой теме когда-то были прикреплены??? В них, наверное, самое главное-то содержится :) :)
KingOfEvil
27.06.2007, 23:07
Какие существуют способы избавиться от WAIT при обращении процессора в видеопамять??? Хотя бы для режима 3.5МГц...
Можно, как в пентагоне, сделать double-buffering для данных и атрибутов. Не уверен, но по-моему, в фирменном ZX-128 тоже было нечто похожее.
ILoveSpeccy
28.06.2007, 00:27
Можно, как в пентагоне, сделать double-buffering для данных и атрибутов. Не уверен, но по-моему, в фирменном ZX-128 тоже было нечто похожее.
А можно подробнее о такой реализации??? Может дока есть???
KingOfEvil
28.06.2007, 21:05
А можно подробнее о такой реализации??? Может дока есть???
Из доки есть только схема Pentagon-128 и исходник прошивки P-1024sl.
Общая идея заключается в том, что если выборки из памяти делать на частоте 3.5 МГц (на той же частоте, на которой работает Z80 не в турбе), то за один машинный цикл в худшем случае нужно сделать 3 обращения к памяти (одно для данных процессора, одно для считывания видеоданных и одно для считывания видеоатрибутов). Т.к. самые короткие машинные циклы Z80 длятся 3 такта, то сделать 3 обращения к памяти, не прибегая к дополнительному торможению процессора, в принципе, возможно. Но придется делать сложное буферирование, т.к. данные нужно схватывать тогда, когда они появляются, а не тогда, когда их нужно вывести на экран (либо выдать процессору), в этот момент они уже должны быть наготове.
ILoveSpeccy
28.06.2007, 22:02
Из доки есть только схема Pentagon-128 и исходник прошивки P-1024sl.
Общая идея заключается в том, что если выборки из памяти делать на частоте 3.5 МГц (на той же частоте, на которой работает Z80 не в турбе), то за один машинный цикл в худшем случае нужно сделать 3 обращения к памяти (одно для данных процессора, одно для считывания видеоданных и одно для считывания видеоатрибутов). Т.к. самые короткие машинные циклы Z80 длятся 3 такта, то сделать 3 обращения к памяти, не прибегая к дополнительному торможению процессора, в принципе, возможно. Но придется делать сложное буферирование, т.к. данные нужно схватывать тогда, когда они появляются, а не тогда, когда их нужно вывести на экран (либо выдать процессору), в этот момент они уже должны быть наготове.
а если видеоконтроллер будет опрашивать память на частоте 7 или 14 МГц???
Только я пока неочень понимаю как мне отловить именно те моменты, когда шина данных не занята???
Я вообще думал так сделать: у меня шины данных проца и видео в ПЛИС...
беру состояние шины данных защелкиваю в D(0-7), блокирую адресную шину VA посредством 74HCT245. Потом на частоте 7 или 14 МГц адрессирую VA и читаю атрибуты и байт данных. Потом опять включаю 74HCT245.... Ну в общем всё как обычно до следующего чтения.
Как ты думаеш, прокатит ???
KingOfEvil
28.06.2007, 22:27
а если видеоконтроллер будет опрашивать память на частоте 7 или 14 МГц???
Ну тогда вообще никаких проблем, если частота выборок ОЗУ равна частоте работы процессора, то тормоза не нужны.
Только я пока неочень понимаю как мне отловить именно те моменты, когда шина данных не занята???
Для этого и делается двойное буферирование, буфера записываются тогда, когда данные появляются, а из буферов они считываются тогда, когда это надо.
Я вообще думал так сделать: у меня шины данных проца и видео в ПЛИС...
беру состояние шины данных защелкиваю в D(0-7), блокирую адресную шину VA посредством 74HCT245. Потом на частоте 7 или 14 МГц адрессирую VA и читаю атрибуты и байт данных. Потом опять включаю 74HCT245.... Ну в общем всё как обычно до следующего чтения.
Как ты думаеш, прокатит ???
Не очень понял, т.е. память будет работать с большей частотой, чем процессор? По-моему, сделать двойное буферирование будет даже проще.
ILoveSpeccy
28.06.2007, 22:47
Не очень понял, т.е. память будет работать с большей частотой, чем процессор? По-моему, сделать двойное буферирование будет даже проще.
Пока процессор с памятью работает... она тактуется частотой процессора, а видеоконтроллер читает с 7 или 14 МГц.
Т.е. пока видеоконтроллер читает, процессор даже не успеет 1 такт сделать. А статика у меня на 55нс... Так что должно получиться (теоретически :D)
Для этого и делается двойное буферирование, буфера записываются тогда, когда данные появляются, а из буферов они считываются тогда, когда это надо.
Не поминаю чего-то... Когда какие данные появляются??? Можешь описать по-подробнее? please :)
А может у кого-нибудь есть файлы, которые в этой теме когда-то были прикреплены??? В них, наверное, самое главное-то содержится
Попроси в той же теме . Хотя раньше там было только описание (но очень вменяемое).
А можно подробнее о такой реализации??? Может дока есть???
Юморист однако :D В тех же статьях из Радио (по клону спека) именно это и описано ;)
"то сделать 3 обращения к памяти, не прибегая к дополнительному торможению процессора, в принципе, возможно. Но придется делать сложное буферирование"
Бред ... При памяти от 100 нс и быстрее и z80
3.5МГц ничего городить не надо ...
KingOfEvil
29.06.2007, 23:26
"то сделать 3 обращения к памяти, не прибегая к дополнительному торможению процессора, в принципе, возможно. Но придется делать сложное буферирование"
Бред ... При памяти от 100 нс и быстрее и z80
3.5МГц ничего городить не надо ...
Ну ты меня еще учить будешь?
Юморист однако В тех же статьях из Радио (по клону спека) именно это и описано
Во-во, причем очень подробно.
"Ну ты меня еще учить будешь?"
Да, если будет подобный бред ...
У меня на 3.5 МГц работает нормально.
А почему память от 100нс я писал ...
и схему синхронизации приводил.
И не надо пудрить другим мозг ...
ILoveSpeccy
28.07.2007, 02:29
"Сердце" нового клона :v2_cool:
PFGA Spartan-2 XC2S100 от Xilinx...
alexfreed
28.07.2007, 13:05
Нет ещё, но пробовал камрад alexfreed (вот здесь http://zx.pk.ru/showthread.php?t=2410). Стукнись к нему, он тебе код даст целого Спектрума, погоняешь в ISE. Или на его сайте должен быть код вроде. Короче его пытай.
На сайте нет, но могу послать по почте.
Только попроси :)
ILoveSpeccy
28.07.2007, 13:15
На сайте нет, но могу послать по почте.
Только попроси :)
Прошу ;)
Если не трудно.. пришли на мыло dr_dmitrij(at)web(dot)de
Кстати, какой чип (FPGA) стоит на твоей девборде???
..... прочитал тему и нашел :D XC3S200....
И самое главное: сколько места занимает спек в FPGA???
Я, например, пробовал минимальную конфигурацию в XC2S100 запихать... 48K забил его на 90 с копейками процентов :(
Поэтому и решил Z80 и AY снаружи повесить...
А Spartan-2 выбрал только из-за того, что он 5V I/O держит!
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot