Section courante

A propos

Section administrative du site

 Langage  Elément  Tutoriel  Aide 
ABAP/4
Ada
Assembleur
Assembly & bytecode
ASP (Active Server Pages)
Basic
C
C++
C# (C Sharp)
Cobol
ColdFusion
Fortran
HTML
Java
JavaScript
LISP
Logo
LotusScript
Oberon
Pascal
Perl
PHP
PL/1
Prolog
Python
Rebol
REXX
Ruby
Rust
SAS
NoSQL
SQL
Swift
X++ (Axapta)
GNAT
SMALLAda
VHDL
Assembleur 370
Assembleur 1802
Assembleur 4004
Assembleur 6502
Assembleur 6800
Assembleur 68000
Assembleur 8080 et 8085
Assembleur 8089
Assembleur 80x86
Assembleur AGC4
Assembleur ARM
Assembleur DPS 8000
Assembleur i860
Assembleur Itanium
Assembleur MIPS
Assembleur PDP-11
Assembleur PowerPC
Assembleur RISC-V
Assembleur SPARC
Assembleur SuperH
Assembleur UNIVAC I
Assembleur VAX
Assembleur Z80
Assembleur Z8000
Assembleur z/Architecture
ASSEMBLER/MONITOR 64
Micol Assembler
GFA Assembler
A86
MASM (Macro Assembler)
TASM (Turbo Assembler)
CIL
Jasmin
LLVM
MSIL
Parrot
P-Code (PCode)
SWEET16
G-Pascal
ASP 1.0
ASP 2.0
ASP 3.0
ASP.NET
ASP.NET Core
ABasiC (Amiga)
Adam SmartBASIC
Altair BASIC
AmigaBASIC (Amiga)
AMOS Basic (Amiga)
Atari Basic (Atari 400, 600 XL, 800, 800XL)
Basic Apple II (Integer BASIC/APPLESOFT)
Basic Commodore 64 (CBM-BASIC)
Basic Commodore 128 (BASIC 7.0)
Basic Commodore VIC-20 (CBM-BASIC 2.0)
Basic Coco 1 (Color Basic)
Basic Coco 2 (Extended Color Basic)
Basic Coco 3 (Extended Color Basic 2.0)
BASICA (PC DOS)
Basic Pro
BBC BASIC
Blitz BASIC (Amiga)
DarkBASIC
Dartmouth BASIC
GFA-Basic (Atari ST/Amiga)
GWBASIC (MS-DOS)
Liberty BASIC
Locomotive BASIC (Amstrad CPC)
MSX-Basic
Omikron Basic (Atari ST)
Oric Extended Basic
Power Basic
Quick Basic/QBasic (MS-DOS)
Sinclair BASIC (ZX80, ZX81, ZX Spectrum)
ST BASIC (Atari ST)
Turbo Basic
Vintage BASIC
VBScript
Visual Basic (VB)
Visual Basic .NET (VB .NET)
Visual Basic pour DOS
Yabasic
BeckerBASIC
SIMONS' BASIC
Basic09 d'OS-9
Disk Extended Color Basic
Basic09 d'OS-9
Disk Extended Color Basic
Access
Excel
Visual Basic pour Windows
Visual Basic .NET pour Windows
C Shell Unix (csh)
C pour Amiga
C pour Atari ST
C pour DOS
C pour Falcon030
C pour GEMDOS (Atari ST)
C pour Linux
C pour PowerTV OS
C pour OS/2
C pour Unix
C pour Windows
Aztec C
CoCo-C
GNU C
HiSoft C
IBM C/2
Introl-C
Lattice C
Microsoft C
MinGW C
MSX-C
Open Watcom C
OS-9 C Compiler
Pure C
Quick C
Turbo C
HiSoft C for Atari ST
HiSoft C for CP/M (Amstrad CPC)
C++ pour OS/2
C++ pour Windows
Borland C++
C++Builder
IBM VisualAge C++
Intel C++
MinGW C++
Open Watcom C++
Symantec C++
Turbo C++
Visual C++
Visual C++ .NET
Watcom C++
Zortech C++
C# (C Sharp) pour Windows
Apple III Cobol
Microsoft Cobol
BlueDragon
Lucee
OpenBD
Railo
Smith Project
Microsoft Fortran
WATFOR-77
CSS
FBML
Open Graph
SVG
XML
XSL/XSLT
LESS
SASS
GCJ (GNU)
JSP
Jython
Visual J++
Node.js
TypeScript
AutoLISP
ACSLogo
LotusScript pour Windows
Amiga Oberon
Oberon .NET
Apple Pascal
Delphi/Kylix/Lazarus
Free Pascal
GNU Pascal
HighSpeed Pascal
IBM Personal Computer Pascal
Lisa Pascal
Maxon Pascal
MPW Pascal
OS-9 Pascal
OSS Personal Pascal
Pascal-86
Pascal du Cray Research
Pascal/VS
Pascal-XT
PURE Pascal
QuickPascal
RemObjets Chrome
Sun Pascal
THINK Pascal
Tiny Pascal (TRS-80)
Turbo Pascal
UCSD Pascal
VAX Pascal
Virtual Pascal
Turbo Pascal for CP/M-80
Turbo Pascal for DOS
Turbo Pascal for Macintosh
Turbo Pascal for Windows
CodeIgniter (Cadre d'application)
Drupal (Projet)
Joomla! (Projet)
Phalanger (PHP .NET)
phpBB (Projet)
Smarty (balise)
Twig (balise)
Symfony (Cadre d'application)
WordPress (Projet)
Zend (Cadre d'application)
PL360
PL/M-80
PL/M-86
Turbo Prolog
CPython
IronPython
Jython
PyPy
AREXX
Regina REXX
JMP
Btrieve
Cassandra
Clipper
CouchDB
dBASE
Hbase
Hypertable
MongoDB
Redis
Access
BigQuery
DB2
H2
Interbase
MySQL
Oracle
PostgreSQL
SAP HANA
SQL Server
Sybase
U-SQL
Introduction
Les premiers pas
Introduction à la programmation DSP
Préface
Notes légal
Dictionnaire
Recherche

Les premiers pas

Cette page donne un aperçu de l'architecture matérielle de la famille de cartes audio Sound Blaster. Elle est destinée aux développeurs souhaitant effectuer une programmation au niveau matériel. Les principaux éléments constitutifs des cartes de la famille Sound Blaster et leurs fonctionnalités seront abordés.

Cette page couvre également l'anatomie et les schémas fonctionnels de la famille de cartes audio Sound Blaster.

Anatomie de la famille de cartes audio Sound Blaster

Cette section décrit les principaux éléments constitutifs de la famille de cartes audio Sound Blaster. Les fonctionnalités et caractéristiques des composants suivants seront présentées :

Puce de processeur de son numérique (Digital Sound Processor)

La puce de processeur de son numérique Digital Sound Processor est l'un des composantes les plus importants de la carte Sound Blaster. Elle interprète les commandes DSP et exécute ensuite l'une des tâches suivantes :

Différentes versions de DSP sont utilisées sur différentes versions de cartes de la famille Sound Blaster. Au fil des ans, les fonctionnalités du DSP ont été grandement améliorées. Les versions ultérieures du DSP sont conçues pour être rétrocompatibles avec leurs homologues antérieures avec de nouvelles fonctionnalités introduites. En général, les versions du DSP peuvent être classées en cinq grandes catégories : 1.xx, 2.00, 2.01+, 3.xx et 4.xx.

Puce de mixage

Le but principal de la puce de mixage est de mélanger les signaux provenant de différentes sources d'entrée et de fournir des capacités de contrôle du volume logiciel. Toutes les cartes de la famille Sound Blaster, à l'exception des cartes SB2.0 et des versions antérieures des cartes Sound Blaster, sont équipées d'une puce de mixage. Actuellement, il existe trois versions de puce de mixage : CT1335, CT1345 et CT1745. Chaque version diffère de l'autre par sa capacité à accepter un nombre différent de sources et à fournir une résolution de contrôle du volume. CT1745, la dernière version de la puce de mixage, peut fournir une résolution plus fine du contrôle du volume.

Puce de synthétiseur FM

La puce de synthétiseur FM synthétise les sons des instruments de musique. Elle tente de se rapprocher des sons d'instruments réels en appliquant la technique de modulation de fréquence (FM) aux ondes sinusoïdales.

Il existe deux versions de puces de synthétiseur FM utilisées sur les cartes Sound Blaster : YAMAHA OPL2 et YAMAHA OPL3. La puce OPL2 est utilisée dans les versions antérieures de Sound Blaster Pro, SB2.0 et Sound Blaster. Les versions ultérieures de Sound Blaster Pro et Sound Blaster 16 utilisent la puce YAMAHA OPL3.

Puce d'interface de bus

La puce d'interface de bus (CT1336) est responsable de la fourniture des signaux de transfert et du transfert de données entre le bus ISA et divers composants de la carte Sound Blaster. Sur Sound Blaster 16, elle fournit un MIDI compatible avec le mode UART MPU-401, des FIFO pour la lecture et l'enregistrement audio numériques et le partage de canaux d'interruption par trois processus différents (son numérisé 8 bits, son numérisé 16 bits et MIDI).

Puce de traitement de signal avancé

Le processeur de signal avancé, utilisé sur les cartes de traitement de signal avancé Sound Blaster 16, est une avancée technologique. Il peut effectuer un traitement mathématique à grande vitesse sur des données sonores numérisées. Il fournit également un traitement de signal en temps réel comme la compression/décompression du son. La flexibilité de la puce est qu'elle peut accepter le téléchargement d'algorithmes. Vous trouverez ci-dessous un schéma simplifié de cette puce :

Voici les principales caractéristiques du processeur de signal avancé :

Le contrôle du processeur de signal avancé, y compris le téléchargement, est géré par un pilote de niveau périphérique appelé CSP.SYS. Vous pouvez accéder à ce pilote de périphérique via le pilote Creative Multimedia System (CTMMSYS).

Schémas fonctionnels pour la famille de cartes audio Sound Blaster

Après avoir présenté les principaux éléments constitutifs des cartes Sound Blaster, nous allons maintenant présenter les schémas fonctionnels pour SB2.0, SB2CD, SBPRO et SB16.

Voici le schéma fonctionnel du Sound Blaster 2.0 :

Notez que la puce CMS est optionnelle. La CMS utilise la technique de modulation de largeur d'impulsion (PWM) pour synthétiser la musique. La qualité du son n'est pas aussi bonne que celle d'un synthétiseur FM et a donc été progressivement supprimée. Toutes les cartes Sound Blaster ultérieures à la SB2.0 ne disposent pas du socket de mise à niveau CMS.

Veuillez noter que la SB2.0 ne contient pas de puce de mixage intégrée.

Voici le schéma fonctionnel de l'interface CD Sound Blaster 2.0 :

Le SB2CD est la mise à niveau du CD-ROM pour SB2.0. Il fournit une interface CD-ROM dont le SB2.0 ne dispose pas. Il comprend également un mixeur audio pour le contrôle du volume logiciel et un amplificateur de puissance.

Voici le schéma fonctionnel du Sound Blaster Pro :

La Sound Blaster Pro est une carte d'échantillonnage stéréo 8 bits avec puce de mixage stéréo et interface CD-ROM intégrée. Le DSP a été progressivement amélioré pour couvrir une plage d'échantillonnage plus large.

Il existe deux versions de Sound Blaster Pro. La différence réside dans la puce de synthétiseur FM utilisée. La version antérieure utilise une puce FM à deux opérateurs appelée OPL2, tandis que la version ultérieure utilise une puce de synthétiseur FM à quatre opérateurs appelée OPL3. La version avec OPL3 est communément appelée Sound Blaster Pro 2.

La Sound Blaster 16 Advanced Signal Processing est une carte d'échantillonnage stéréo 16 bits. Elle dispose également d'une puce de mixage stéréo améliorée. Une interface MIDI en mode UART MPU-401 a également été ajoutée. L'un des composantes clefs est le processeur de signal avancé pouvant effectuer un traitement mathématique à grande vitesse sur les données provenant/vers l'AD/DA.

La Sound Blaster 16 est identique à Sound Blaster 16 Advanced Signal Processing, sauf que la puce du processeur de signal avancé est une mise à niveau facultative.



PARTAGER CETTE PAGE SUR
Dernière mise à jour : Dimanche, le 15 septembre 2024