Який найкращий тип передачі USB (масовий, перериваючий, ізохронний переказ), який використовується для впровадження USB-осцилографа?


20

Я хочу побудувати осцилограф USB. Я читав про різні типи передачі USB . Який тип передачі найкраще перенести зібрані зразки АЦП з USB-осцилографа на ПК?

Нижче наведено кілька моїх висновків. Будь ласка, виправте мене, і також було б добре, якщо хтось може запропонувати хороший тип передачі.

  1. Ізохронна передача - Можлива втрата даних. Не добре для осцилографа, оскільки кожен елемент даних є цінним. Скільки даних можна втратити?
  2. Режим переривання - я не маю уявлення, чи не затопить це з'єднання USB
  3. Масовий режим - мені здається найкращим, оскільки немає втрати даних
  4. Контроль передачі - не підходить, оскільки він не призначений для передачі даних

2
З того, що я читав, більшість областей використання usb використовує режим масового надіслання скріншотів діапазону.
Перехожий

Імовірно, якщо ви переходите в ізохронний режим, ви можете залишити трохи додаткової пропускної здатності для виправлення помилок.
користувач253751

Або для грубої надмірності, PCIe DMA лоскотить мою фантазію.
Мітч

Відповіді:


28

Масові передачі не втрачають даних, але вони не мають гарантованої мінімальної пропускної здатності. (З іншого боку, вони можуть досягати більшої швидкості, оскільки вони здатні використовувати всю пропускну здатність, яка фактично не використовується жодними іншими передачами.)

Що відбувається, коли передача даних вашого осцилоскопа затримується (або через помилки, або через інші пристрої), і нові дані накопичуються? Ви зупиняєте пристрій, поки не передаються старі дані, або ви викидаєте старі дані, щоб мати можливість передавати поточні дані?

Ізохронні передачі призначені для даних у режимі реального часу. Ви не маєте вибору щодо керування помилками, але пропускна здатність зарезервована в шині.

  • Якщо ви хочете відображати записані дані в режимі реального часу, вам слід використовувати ізохронні передачі.
  • Якщо ви хочете перенести записані дані на ПК після завершення вимірювань, слід використовувати масові передачі.

10

Питання майже повністю не залежить від Вашого використання в якості осцилографа і повністю регулюється типом зв’язку, про який Ви просите USB. Наприклад:

  • Осцилоскоп, який має великий (багатомегабайтний) буфер внутрішньо і призначений для початку спочатку короткого тесту, а потім завантаження даних, використовував би цілком об'ємну передачу. У ньому немає потреби в гарантованій пропускній здатності, тому високий об'єм з перевіркою помилок об'ємної передачі буде найкращим.
  • Осцилоскоп, призначений для безперервного підключення до випробовуваної ланцюга безперервно і повинен працювати в режимі реального часу (читати: детермінований час виконання), вибрав би ізохрону. Масові не надають жодних детермінованих гарантій виконання, і ви не можете встановити трубу таким чином, щоб вона була зарезервованою пропускною здатністю. Вам доведеться робити власні виправлення помилок, але принаймні їх можна зробити детерміновано.
  • Осцилоскоп із "живою" подачею для перегляду людиною плюс швидкісне захоплення на тригер може встановити дві кінцеві точки, одну ізохрону, щоб не відставати від прямої подачі та масової передачі для запущених даних. Для споживання людиною втрата кадру чи двох не є великою справою, тому немає причин турбуватися про відсутність перевірки помилок на ізохроні. Однак, коли мова заходить про фактичні дані, ви передаєте їх масово для виправлення помилок.
  • Можна використовувати цю схему як частину живої системи. Це може бути не лише осцилоскоп, але й захист від сигналів, які вказують на те, що схема залишає робочі діапазони і потребує вимкнення комп’ютером. У цьому випадку ви можете додати кінцеву точку переривання до системи, щоб отримати гарантовану затримку (та деякі чітко визначені обробки помилок), щоб переконатися, що проблема обслуговується, перш ніж вона порушує ланцюги.

Як тільки ви дізнаєтесь, який тип даних ви передаєте, та якісні умови обслуговування (QoS), під якими повинні надходити дані, ви зможете вирішити, під яким механізмом передачі через USB. Ви будете знати, що готові приймати ці рішення, коли для опису потрібних даних та QoS більше не потрібно слова "осцилоскоп". Тоді ви знаєте, що цілком достатньо об'єктивних слів, щоб почати вирішувати ці проблеми.


4

Для осцилографа пропускна здатність передачі є параметром, який ви хочете максимально збільшити. Масова передача розроблена спеціально для великої пропускної здатності, тому це правильний вибір. Незважаючи на те, що ізохронні та переривчасті передачі межують із затримкою, вони призначені лише для потоків даних із низькою та середньою пропускною здатністю.


3

Просто використовуйте масові перекази. Осцилоскоп насправді не є пристроєм з високою швидкістю передачі даних. Якщо ви не плануєте виготовити цифровий дизайн типу люмінофора, осцилограф насправді є лише вікном у дуже маленьку частину форми хвилі. Наприклад, скажімо, що ви хочете показати 1000 горизонтальних пікселів і оновити дисплей близько 30 ГГц. Якщо вибірки мають 8-бітовий кожен (це типово) і є два канали, ви дивитесь лише на 60 000 байт / секунду. Повний швидкісний USB може робити близько 1 000 000 байт / сек, тому ви використовуєте менше 6% пропускної здатності шини. Це дає багато часу для того, щоб дозволити режим масової передачі виконувати свої дії (виправляти помилки, обходити інші автобусні перевезення), і навряд чи ви коли-небудь зіткнетеся з конфігурацією шини реального життя, яка не зможе виділити вам достатню пропускну здатність. за стільки даних.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.