Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » IBM PC-совместимое. До 2000 года включительно » Это не "дура", это FMonster |
<<Назад Вперед>> | Страницы: 1 2 3 4 5 6 7 8 9 | Печать |
scg |
Имеет - не имеет, но исторически DMA победил. Значит что-то в нем полезное есть. Только к классическому ISA DMA, который мы в данном случае обсуждаем, всё это не имеет никакого отношения. Разве частота ISA шины не постоянна? Однако частота шины в данным случае всё равно остаётся в разы выше частоты ISA DMA-контроллера. На мой взгляд, DMA гораздо удобнее для звуковых карт. Передавая побайтово семплы вы запаритесь выдерживать нужный период, тратя процессорное время не только на ожидание шины но и на отслеживание времени, а DMA позволяет самой звуковухе вытаскивать байты из памяти с нужной частотой. |
pahan
Advanced Member
Откуда: Химки, М.О. Всего сообщений: 1070 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 13 мар. 2015 |
А я и не отрицал его полезность как принципа. Я имел в виду лишь устарелость конкретной реализации этого принципа (а вся эта возня с отдельным контроллером и кучей каналов однозначно указывает на конкретную реализацию) с развитием PC-железа. Которую и производители прекрасно понимали в то время - уже в EISA (1988 год) были введены более быстрые и несовместимые режимы. Имеет - не имеет, но исторически DMA победил. Значит что-то в нем полезное есть. Ага. Более того, она даже нигде формально не стандартизирована Например, на 486х её можно заставить гулять от 1,6 до 25 МГц. Хотя найти платы, которые выдержат >11-12, надо ещё постараться Разве частота ISA шины не постоянна? Начнём с того, что кроме звуковых карт и дисководов, он ни для чего (массово) и не применялся. Ну и потом ещё прикрутили к LPT-портам и то скорее из-за потребности тащить обратную совместимость со старыми - он есть только в ECP-режиме, который появился в 1994, когда ISA уже стремительно устаревала. На мой взгляд, DMA гораздо удобнее для звуковых карт. Вы правда думаете, что у DMA-контроллера не будет ожидания шины? Но это не главное - главное действительно отслеживание времени. Тем более, что на разных поколениях процессоров на это действительно будет тратиться сильно разное число тактов, а достаточно надёжные способы программно измерять время и определять, что вообще за процессор используется, появились только в первых пентиумах. И кстати, зачем передавать побайтово, если можно забить буфер блоком данных и пусть устройство его обрабатывает со своей скоростью? А вот выбор способа как быстрее этот буфер забить - и есть суть спора. И он вполне может оказаться зависим от размера этого буфера. Передавая побайтово семплы вы запаритесь выдерживать нужный период, тратя процессорное время не только на ожидание шины но и на отслеживание времени С той частотой, на которой она способна их обработать. Кстати, в памяти они тоже должны откуда-то появиться, а кто их туда положит? Процессор. А тогда в чём разница, слать напрямую в устройство или сначала в память? а DMA позволяет самой звуковухе вытаскивать байты из памяти с нужной частотой. |
scg |
Пару раз видел такую реализацию в современных встраиваемых контроллерах. Система проста в реализации и вполне сносно работает, если вам нужно предать блок данных из памяти одного контроллера в другой. а вся эта возня с отдельным контроллером и кучей каналов однозначно указывает на конкретную реализацию Так больше ничего и не осталось. DMA контроллер, который мы обсуждаем как раз более всего подходит для задач, где нужно передавать большой и стабильный поток данных. Звуковые карты идеально для этого подходят. Я еще раз подчеркну: для звука нужно передавать данные не сколько быстро, сколько стабильно. И очень желательно не отвлекать на это процессор, который занимается более полезным делом - отрисовкой спрайтов. Начнём с того, что кроме звуковых карт и дисководов, он ни для чего (массово) и не применялся. Точно такая же, как и без DMA Вы правда думаете, что у DMA-контроллера не будет ожидания шины? Да, это тоже один из методов, и довольно не плохой. Но во времена ISA звуковых карт память была штукой дорогой. Помните длину FIFO буфера на последовательном порту? Если не ошибаюсь - 16 байт? Звуковухе памяти нужно гораздо больше. Автомат DMA штука простая, занимает меньше места на кристалле и неплохо выполняет свою задачу. можно забить буфер блоком данных и пусть устройство его обрабатывает со своей скоростью? А вот выбор способа как быстрее этот буфер забить - и есть суть спора. И он вполне может оказаться зависим от размера этого буфера. Лично я сойду с ума, если мне придется рендерить звук непосредственно в порты ввода вывода и следить чтобы не было джиттера. Вполне нормальная практика разделить рендеринг и вывод на две разные задачи даже если выводить звук непосредственно в IO порты. Процессор. А тогда в чём разница, слать напрямую в устройство или сначала в память? |
Fagear
Advanced Member
Откуда: Москва, САО Всего сообщений: 1228 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 22 янв. 2010 |
В общем, теоретически скорректировав кривое содержимое JED'а я сочинил некоторый GAL'озаменитель для CSM. Прикрепленный файл (2018-12-14 21.20.00.png, 0 байт, скачан: 46 раз) |
Fagear
Advanced Member
Откуда: Москва, САО Всего сообщений: 1228 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 22 янв. 2010 |
Заказал прототипы реплики. Прикрепленный файл (Скриншот 2018-12, 0 байт, скачан: 80 раз) |
rus
Advanced Member
Всего сообщений: 298 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 24 нояб. 2014 |
Fagear написал: Я стесняюсь оффтопить, но меня разбирает любопытство. Каким образом на картах AWE32 сигнал с YMF262 OPL3 попадает вместе с сигналом от EMU8k на S/PDIF out? В цифре вообще отдают только два - OPL2 и OPL3, и у тех свой проприетарный Ямаховский интерфейс к своим же ЦАПам. |
Fagear
Advanced Member
Откуда: Москва, САО Всего сообщений: 1228 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 22 янв. 2010 |
rus написал: Я не в курсе, что и у каких AWE32 выдаётся на S/PDIF. Но, вероятно, либо используется чип YMF289B-S с частотой сэмплирования 44,1 кГц, либо интегрированный вариант в CT1747. Из YMF262-M вряд ли получится получить S/PDIF "малой кровью". Каким образом на картах AWE32 сигнал с YMF262 OPL3 попадает вместе с сигналом от EMU8k на S/PDIF out? |
Fagear
Advanced Member
Откуда: Москва, САО Всего сообщений: 1228 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 22 янв. 2010 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 3 февраля 2019 23:00 Сообщение отредактировано: 3 февраля 2019 23:01
А вот и первый прототип CSM: Прикрепленный файл (2019-02-04 00.44.48.jpg, 0 байт, скачан: 27 раз) |
Mihail1810
Advanced Member
Откуда: Екатеринбург Всего сообщений: 1565 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 8 дек. 2014 |
А купить можно платку такую? |
Tronix
Advanced Member
Откуда: Москва Всего сообщений: 1749 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 15 янв. 2008 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 5 февраля 2019 17:15 Сообщение отредактировано: 5 февраля 2019 17:16
Mihail1810 написал: Можно но не нужно А смысл, если афтор даже оригинальный ковокс не завел? Или завел, но молчит? А купить можно платку такую? В том смыле, что что там с галкой-то в итоге? Подошла прошивка/не подошла? Инфы то нет |
<<Назад Вперед>> | Страницы: 1 2 3 4 5 6 7 8 9 | Печать |
Полигон-2 » IBM PC-совместимое. До 2000 года включительно » Это не "дура", это FMonster |
1 посетитель просмотрел эту тему за последние 15 минут |
В том числе: 1 гость, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |