PDA

Просмотр полной версии : 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 микросхем + их обвязка и много-много радости.

fan
06.05.2007, 00:08
Как мне правильно передать сигналы для работы видеоконтроллера из одной матрицы в другую?
Имеются ввиду значения Ver_Cnt и Hor_Cnt...
Я прально понял что нужно лишь передать значения дешифраторов торчащих на Ver_Cnt и Hor_Cnt ?


Потом, если все получится, то хочу собрать что-нибудь нормальное на XC95144XL в корпусе TQFP100. Только вот незнаю как это дело паять .
На самом делеле это проще пареной репы . Самое сложное поставить чип ровно на контактные площадки ;) Далелее замазываем ножки канефолью (растворённой в спирте) ооооочень жирным слоем (в несколько проходов). Чтоб чип не убежал припаиваем несколько крайних ножек на каждой стороне так лево как умеем . Далее так же припаиваем все остальные ножки . В результате такого бэзпредела будет туча слипшихся ножек (это нормально ;) ). Устроняются сопли на ножках с помощь спец многожильной проволоки(медная не лужёная пропитанная канифолью) для отпаивания - solder wick(паяльный тампон :D) aka soldering remover . Для данного процесса желательно применять паяльник с жалом аля отвёртка . А так же перед процессом снятия соплей нужно сново нанести жирный слой канефоли .

Mikka_A
06.05.2007, 00:38
............. Для данного процесса желательно применять паяльник с жалом аля отвёртка . А так же перед процессом снятия соплей нужно сново нанести жирный слой канефоли ...........

На самом деле все проще....

Береццо паыяльная паста "Паста для пайки 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. И знаю лично маньяка, котороый такие платы умеет делать. Но, как он говорит, проще заказать, потому как ЛУТ очень трудоемкое занятие. Уходит несколько дней, чтобы сделать сложную плату аккуратно.

icebear
07.05.2007, 16:35
К сожалению с Альтерами у нас тяжело.
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/)на спартане???

icebear
08.05.2007, 12:46
Да с платами проблем нет, только 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

Mikka_A
18.05.2007, 21:47
Вот.... 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)

syd
30.05.2007, 07:23
Неверим :)))
Давай фотки...

fan
30.05.2007, 14:43
1. Как расширить 48К до 128К.... ????
Бррр . Чёто я не могу найти простенькую схемку , есть уже извращённая которую ты уже видел в респекте (блок схема матрицы).

Собсно для начала нужно разобраться с видео страницами , в одной 62256 их как раз две (этого достаточно чтоб реализовать четырёх битные режимы 256x192 , 256x224 , 256x256 , 320x200) . Прежде всего нужно отловить обращение к VRAM 62256 (как со стороны проца, так и со стороны ВК), чтоб подтыкать VRAM и рубить RAM .
Далее нужно выловить к какой странице VRAM идёт обращение , чтоб рулить старшей адресной ножкой VRAM .

Вроде всё .

DVS
30.05.2007, 15:43
2 ILoveSpeccy

Отлично. После расширения до 128K, подключения AY и реализации TAPE IN/OUT я бы собрал для себя такую штучку. Давно мечтал о Спеке 128К + AY на CPLD без всяких дополнительных наворотов.

ILoveSpeccy
30.05.2007, 17:32
Ну в общем вот фотки...
Все утюгом накатано :) включая TQFP-адаптер...

p.s. Такой прикол... Размер одного знакоместа на телевизоре 22mm x 22mm :D

Mister
30.05.2007, 18:40
2 ILoveSpeccy
Можеш выложить всю инфу по твоему Speccy?
Ток так по подробней, для чайника :D
Plizzz

ILoveSpeccy
30.05.2007, 19:36
2 ILoveSpeccy
Можеш выложить всю инфу по твоему Speccy?
Ток так по подробней, для чайника :D
Plizzz

Как все подготовлю (схему, pcb, исходники), сразу выложу...

fan
31.05.2007, 20:10
Все утюгом накатано включая TQFP-адаптер...
Какой принтер использовался ?

ILoveSpeccy
31.05.2007, 21:25
Какой принтер использовался ?

HP LaserJet 1018...

Первый раз этот адаптер где-то с 10-12 раза получился :D

fan
02.06.2007, 15:35
Первый раз этот адаптер где-то с 10-12 раза получился
А каков рецепт последнего удачного пирожка ? А то по фотке просто супер выглядит .

Mikka_A
02.06.2007, 22:51
Ну в общем вот фотки...
Все утюгом накатано :) включая 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)
Думаю маленькую статейку для интересующихся сбацать!

Mikka_A
25.06.2007, 10:37
Приложил свежую фотку клавиатуры. (Всю ночь делал :v2_slee2:)
PS2 пока еще немогу подключить а ждать тоже уже не в моготу...
Вроде работает... Ща еще на вход с магнитофона для загрузки замутить надо....

А что за чип на клаве?
Зачем?
А синенькое что это?

А плятка маленькая рядом?

ILoveSpeccy
25.06.2007, 11:50
А что за чип на клаве?
Зачем?
Это 74HCT245, открывается при открытии порта клавы на чтение. Просто сначала я хотел подключить PS2 (что и сделаю, когда CPLD на FPGA заменю :) ).


А синенькое что это?
Это глупость маленькая была :D регулятор громкости для магнитофонного входа :rolleyes:. Сейчас заменил эту "порнографию" на это (смотрите фотку снизу!)


А плятка маленькая рядом?
Кнопка "RESET" c 10K резюком и конденсатором... Хотел на плате клавы разместить, но когда плату разводил - забыл :v2_tong:

fan
25.06.2007, 20:06
Думаю маленькую статейку для интересующихся сбацать!
Адабрям :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

fan
27.06.2007, 17:41
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 :)

fan
29.06.2007, 01:23
А может у кого-нибудь есть файлы, которые в этой теме когда-то были прикреплены??? В них, наверное, самое главное-то содержится
Попроси в той же теме . Хотя раньше там было только описание (но очень вменяемое).


А можно подробнее о такой реализации??? Может дока есть???
Юморист однако :D В тех же статьях из Радио (по клону спека) именно это и описано ;)

ASDT
29.06.2007, 05:28
"то сделать 3 обращения к памяти, не прибегая к дополнительному торможению процессора, в принципе, возможно. Но придется делать сложное буферирование"

Бред ... При памяти от 100 нс и быстрее и z80
3.5МГц ничего городить не надо ...

KingOfEvil
29.06.2007, 23:26
"то сделать 3 обращения к памяти, не прибегая к дополнительному торможению процессора, в принципе, возможно. Но придется делать сложное буферирование"

Бред ... При памяти от 100 нс и быстрее и z80
3.5МГц ничего городить не надо ...

Ну ты меня еще учить будешь?



Юморист однако В тех же статьях из Радио (по клону спека) именно это и описано

Во-во, причем очень подробно.

ASDT
30.06.2007, 08:04
"Ну ты меня еще учить будешь?"
Да, если будет подобный бред ...
У меня на 3.5 МГц работает нормально.
А почему память от 100нс я писал ...
и схему синхронизации приводил.
И не надо пудрить другим мозг ...

ASDT
30.06.2007, 13:39
Вот схемку нашел ...

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 держит!