Важная информация

User Tag List

Страница 24 из 54 ПерваяПервая ... 202122232425262728 ... ПоследняяПоследняя
Показано с 231 по 240 из 531

Тема: Компьютер "ZXM-Zephyr" - Обсуждение

  1. #231
    Moderator Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    9,917
    Спасибо Благодарностей отдано 
    178
    Спасибо Благодарностей получено 
    695
    Поблагодарили
    368 сообщений
    Mentioned
    19 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от piroxilin Посмотреть сообщение

    НЕМО - не видит карточки (Феникс и Ева их-же видят)
    Понял почему не видел. Я в той прошивке забыл отключить обращение к SD карте. Вот фаталл начинал к ней долбится и на том зависал.

    Я сейчас сам наступил на тоже самое.
    Пока с SD не разобрался, посему пока отключу нафиг.
    Я еще не пойму чего SAA хрюкает.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  2. #232
    Moderator Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    9,917
    Спасибо Благодарностей отдано 
    178
    Спасибо Благодарностей получено 
    695
    Поблагодарили
    368 сообщений
    Mentioned
    19 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Так, короче я пока в ступоре - не могу сформировать нормальный Инт.
    Либо у меня крыша уехала, либо не знаю что думать.

    Короче, господа ПЛИСоносцы, прошу вас помочь сочинить этот злочастный инт.
    Верилог я не знаю, можно и на VHDL, а лучше на AHDL. Только просьба реально работающие куски. А то буксую не по-детски.

    Код:
        ------------------------------------------------------------------------------------
        -- Сигнал прерывания
        -- Примечание: прерывание генерится с частотой 50Гц
        ------------------------------------------------------------------------------------
         Int_sync.clk = VSync;    			-- прерывание на 256 импульсе --VSync; -- сигнал KS/
         Int_sync.d = GND;
    	 IF Turbo_en == 0 THEN
    		Int_sync.prn = !(HSync_count[5].q # HSync_count[4].q # HSync_count[3].q); 
    	 ELSE
    		Int_sync.prn = !(HSync_count[5].q # HSync_count[4].q # HSync_count[3].q # HSync_count[2].q);
    	 END IF;
        ------------------------------------------------------------------------------------
        -- Сигнал прерывания
        ------------------------------------------------------------------------------------
        C_INT = Int_sync.q;
    Смысл такой по окончанию кадрового импльса по идее должен защелкиваться триггер, а спустя 32 такта процессора сбрасываться.
    Но ведет себя вообще странно, то появляется один раз, то два раза, а то вообще не появляется. По идее он должен появлятся синхронно с окончанием кадрового импульса.
    Посмотрел кусок у KOE в P2.2 там вроде тоже есть такой триггер

    Код:
    inttrg.clk=ksi; 
    inttrg.d=gnd; 
    inttrg.prn=((not av2) nand av3);
    int=inttrg.q;
    Но я полагаю, что у него там все работает.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  3. #233
    Member
    Регистрация
    25.09.2014
    Адрес
    г. Санкт-Петербург
    Сообщений
    82
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Имхо, использование асинхронной предустановки в рабочих циклах - это плохой тон Может работать - может нет. Зависит от ПЛИС, компилятора, фаз луны

    Я бы подумал примерно так - не пинать сильно - проверить нечем - всего проекта у меня нет

    if RST='0' then int <= '1';
    elsif clk_cpu'event and clk_cpu='1' then
    va <= VSync;
    vb <= va;
    vc <= va and not vb; --выделили фронт 0-1
    if vc='1' then
    int <= '0';
    else
    if Turbo_en='0' then
    int <= bla bla bla;
    else
    int <= not bla bla bla; --
    end if;
    end if;
    end if;
    Pentagon 128 / 1993 - PS/2 - HDMI (в процессе)

  4. #234
    Guru
    Регистрация
    16.12.2009
    Адрес
    Харьков
    Сообщений
    4,731
    Спасибо Благодарностей отдано 
    355
    Спасибо Благодарностей получено 
    369
    Поблагодарили
    238 сообщений
    Mentioned
    11 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Mick, а такой вариант:
    Код:
    process (m1, iorq, f14) -- синхронный m1 or iorq
    begin
    	if f14'event and f14='1' then		
    		int_cpu_reset <= m1 or iorq;
     	end if;
    end process;
    
    process (f14, reset, int_cpu_reset)
    	begin
    		if reset='0' or int_cpu_reset='0' then
    			int <= '1';  -- сброс инт в 1 по команде проца о приходе прерывания или reset
    		elsif f14'event and f14='1' then
    			if условие перехода vsync в 1 ='1' then -- начало инт;
    				int <= '0';
    			end if;
    		end if;
    	end process;
    думаю не стоит заводить сигнал о вкл. турборежима в изменение длины инта, ведь есть стандартная команда проца о приходе прерывания, вот её и завести на сброс тригера, зачем отсчитывать 32 такта?
    Последний раз редактировалось solegstar; 29.01.2015 в 13:54.

  5. #235
    Moderator Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    9,917
    Спасибо Благодарностей отдано 
    178
    Спасибо Благодарностей получено 
    695
    Поблагодарили
    368 сообщений
    Mentioned
    19 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от solegstar Посмотреть сообщение
    думаю не стоит заводить сигнал о вкл. турборежима в изменение длины инта, ведь есть стандартная команда проца о приходе прерывания, вот её и завести на сброс тригера, зачем отсчитывать 32 такта?
    Это конечно понятно, но мне хочется по старинке, по времени.
    Кстати я ошибся, забыл что у меня сейчас VGA развертка и посему забыл исправить количество тактов на прерывание. Получилось 16, видимо процессору это очень маловато стало, вот и колбасило. Сейчас изменил на полноценные 32 такта, стал вроде как нормально работать - по крайней мере пока не замечал провалов.

    Теперь вернусь к выборке SAA, что то мне не нравится как SAA отрабатывает, будто бы через рванный динамик играет. Явно кто то ей там подсерает.
    Последний раз редактировалось Mick; 29.01.2015 в 14:03.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  6. #236
    Guru
    Регистрация
    16.12.2009
    Адрес
    Харьков
    Сообщений
    4,731
    Спасибо Благодарностей отдано 
    355
    Спасибо Благодарностей получено 
    369
    Поблагодарили
    238 сообщений
    Mentioned
    11 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    вернусь к выборке SAA
    а как она у тебя выбирается?

    ---------- Post added at 13:27 ---------- Previous post was at 13:15 ----------

    у себя в профи сделал так:
    Код:
    -----------------SAA------------------------
    CSFFFD <= '0' when adress(15 downto 0)=X"fffd" and mrq='1' and iorq='0' and m1='1' and nemo_ebl='0' and profi_ebl='0' and spi_iorqge='0' and iorqge_mc='0' else '1';
    -- условия выборки порта и контроль всех остальных устройств
    -- висящих на шине по выборкам дешифраторов (iorqge проще говоря)
    saa_sel <= '0' when Data(7 downto 4)="1111" and Data(2 downto 0)="110" and wr='0' and CSFFFD='0' else '1';
    -- учитываются все биты шины данных, кроме ессно самого вкл. саа,
    -- т.к. на всяких оцифровках (Digital Studio и т.д.)
    -- бывали глюки со звуком, сильно срало в порты ау)
    
    process(f14,saa_bit,res,csts,saa_sel,Data)
    begin
    	if (res='0') then
    		saa_bit <= '1';
    	elsif ((f14'event and f14='0') and saa_sel='0') then
    		saa_bit <= Data(3);
    	end if;
    end process;
    
    saa_cs <= '0' when adress(15)='0' and adress(14)='0' and adress(7 downto 0)=X"ff" and saa_bit='0' and m1='1' and iorq='0' and rd='1' and wr='0' and dos='1' and cpm='1' else '1';
    -- здесь стандартная выборка, кроме сигнала спм (это для профи, аналог dos в обычном режиме)
    saa_a0 <= adress(8) or saa_bit;
    saa_clk <= f8 or saa_bit;
    долго экспериментировал, чтобы никакие оцифровки не включали частоту саа, вроде получилось свести их на нет.

  7. #237
    Moderator Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    9,917
    Спасибо Благодарностей отдано 
    178
    Спасибо Благодарностей получено 
    695
    Поблагодарили
    368 сообщений
    Mentioned
    19 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да дело тут не в выборе SAA похоже. Я вообще взял перекинул в прошивке на другой порт, взял например FB. В программке вывода звука на SAA тоже поменял порты.
    Теперь казалось бы от сигнала DOS никак не зависит. Ан нет тот же рваный динамик.
    Что то явно в другом.

    ---------- Post added at 16:03 ---------- Previous post was at 14:46 ----------

    Ха, ха нашел причину эффекта рваного динамика SAA. Короче оказалось дело в форме частоты 8МГЦ которая идет с ПЛИС. Стал щупом осцилографа на 8 ногу SAA, вижу нормальную такую синусоиду 8МГЦ и хорошо что я звук при этом включил. Слышу чище стал играть. Ну думаю дай кондер на землю повешу. Порылся на предмет что под рукой, нашел 680пф. Аккуратно приставил к 8 и 9 ногам. Видимо SAA не нравится форма сигнала. Надо похоже было через инвертор пропустить частоту.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  8. #238
    Guru
    Регистрация
    16.12.2009
    Адрес
    Харьков
    Сообщений
    4,731
    Спасибо Благодарностей отдано 
    355
    Спасибо Благодарностей получено 
    369
    Поблагодарили
    238 сообщений
    Mentioned
    11 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    вижу нормальную такую синусоиду 8МГЦ
    вообще странно, может где непропай? у тебя ж с плисины идет сразу на саашку частота, откуда там синусоида? может на переходных отверстиях дорожки где-то теряется? если посмотреть форму сигнала на самой плисине?

    ---------- Post added at 15:28 ---------- Previous post was at 15:27 ----------

    у меня частота на саашку идет прямо с епмки и ниче, нормальные чистые прямоугольные 8 МГц.

  9. #239
    Moderator Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    9,917
    Спасибо Благодарностей отдано 
    178
    Спасибо Благодарностей получено 
    695
    Поблагодарили
    368 сообщений
    Mentioned
    19 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от solegstar Посмотреть сообщение
    вообще странно, может где непропай? у тебя ж с плисины идет сразу на саашку частота, откуда там синусоида? может на переходных отверстиях дорожки где-то теряется? если посмотреть форму сигнала на самой плисине?
    у меня частота на саашку идет прямо с епмки и ниче, нормальные чистые прямоугольные 8 МГц.
    Ну как бы у меня другаю ПЛИС это раз и кто ее знает из чего она там собрана, а во вторых у piroxilin тажа петрушка. С другой стороны осцил сам так может показывать. Не забывай что щуп вносит некоторые изменения на форму сигнала и уменьшает пердежку.
    И да как бы переходных отверстий в этой дорожки нет. Так что уж непропай тут не причем.

    Более того, если стать осцилом на самой ПЛИСине, то эффекта уменьшения пердежа не наблюдается.
    Последний раз редактировалось Mick; 30.01.2015 в 06:54.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  10. #240
    Moderator Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    9,917
    Спасибо Благодарностей отдано 
    178
    Спасибо Благодарностей получено 
    695
    Поблагодарили
    368 сообщений
    Mentioned
    19 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Попробовал поиграться емкостью кондера. Поставил 33пФ, эффекта никакого. Затем поставил 100пФ, стало получше, но не чисто. И 680пФ стало чисто, на этом пожалуй остановлюсь и запаяю его.

    Начал играться с Compact Flash.
    Взял из дома переходник

    Так сказать отобрал у Феникса, который с ним всегда работал и еще один адаптер, который работает как зря



    И обнаружил, что второй либо спаян как зря потому как между некоторыми ногами там как бы замкнуто, либо фиг его знает. Попробую убрать те перемычки, может заработает как надо.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

Страница 24 из 54 ПерваяПервая ... 202122232425262728 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 17
    Последнее: 26.12.2015, 23:22
  2. Обсуждение раздела "Флейм"
    от AAA в разделе Форум
    Ответов: 135
    Последнее: 07.10.2013, 16:06
  3. Обсуждение правил "Барахолки"
    от CodeMaster в разделе Форум
    Ответов: 488
    Последнее: 23.04.2012, 12:24
  4. Ответов: 0
    Последнее: 15.08.2010, 14:38
  5. Ответов: 0
    Последнее: 26.06.2005, 11:52

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •