Le finaliste du prix Hackaday 2021 ThunderScope fait exactement cela. [Aleska] construit un oscilloscope modulaire open source connecté à un PC visant quatre canaux et une bande passante cool de 100 MHz avec un faible budget. Les journaux de projet détaillés, montrant comment il apprend à la volée la technologie de la portée, est un regard fascinant sur l’esprit d’un ingénieur alors qu’il navigue dans les hauts et les bas d’une construction raisonnablement compliquée.

Nous aimons comment [Aleska] s’est rendu compte très tôt que garder le projet privé et ne le publier que lorsque « j’ai terminé » entrave en fait la progression, alors que vous pouvez ouvrir le code source dès le début, enregistrer la progression et obtenir d’excellents commentaires dès le début. Toutes ces erreurs évidentes et ces mauvais choix de conception sont détectés et corrigés avant de s’engager dans le matériel. Pensez à tout le temps gagné. C’est maintenant une attitude à cultiver !

Conception modulaire

Une approche modulaire pour réduire les risques liés à la conception du matériel est un bon choix, permettant d’ajouter des mises à niveau ou des modules fonctionnels alternatifs en cas de besoin. Besoin d’échanger une interface asymétrique contre une interface différentielle, ou sur une autre avec une autre fonction spécialisée ? Bien sûr, il suffit de le sortir et de déposer le remplacement et de craquer.

Une astuce USB 3.0 soignée

Astuce USB 3.0
Sur numato.com

Le chemin de données extrait des échantillons de l’ADC HMCAD1511 sur huit voies LVDS de 1 Go/s, les alimentant dans les blocs SERDES sur un FPGA Spartan 6. À l’intérieur, une FIFO prend les données désérialisées (parallèles) et les synchronise dans le domaine d’horloge des interfaces USB, ainsi que la mise en mémoire tampon pendant les périodes où l’USB est occupé. Cela permet l’utilisation d’une puce d’interface FIFO USB 3.0 standard de nos bons amis de FTDI pour faire face à tout cet interfaçage désordonné.

Ensuite, l’ADC lui-même a besoin d’être configuré, le frontend programmable également, sans parler du FPGA qui nécessite son chargement de bitstream via JTAG pendant le développement. Tous ces trucs de « canal secondaire » sont traités via une puce d’interface USB 2.0 (encore une fois de FTDI).

Cette astuce intéressante d’insertion d’un hub USB 2.0 tire parti de la façon dont les connecteurs USB 3.0 peuvent avoir à la fois des ports USB 3.0 ultra-rapides et des ports ultra-rapides fonctionnant en parallèle, de sorte que vous pouvez câbler le port ultra-rapide directement à la puce d’interface FT601. , et insérez une puce de concentrateur dans le chemin USB 2.0, puis alimentez d’autres périphériques USB 2.0 à partir du même connecteur. Une astuce simple mais astucieuse pour économiser à la fois des coûts et de la complexité !

Les yeux d’aigle remarqueront que certaines des fonctions traditionnelles du circuit d’oscilloscope sont manquantes, notamment un déclencheur matériel. Cette conception repose sur la vitesse des PC modernes pour permettre à cette fonction d’être implémentée de manière adéquate par l’application d’oscilloscope lorsqu’elle est alimentée en continu avec toutes les données d’échantillon.

Nous regarderons avec intérêt à quel point cela se déroule bien.