Answer about AY-3-8910 [2/2]
ZXNet echo conference «real.speccy»
From Kirill Frolov → To All 20 September 1998
about a question about AY-3-8910 and I decided to intervene.
├┤i Yan & All !
Continuation.
===== cut line ======
Tone generator control
(registers R0, R1, R2, R3, R4, R5).
Each channel is equipped with its own tone generator, producing pulses of the required frequency. This frequency is obtained by dividing the clock frequency by 16 and then dividing the result by the 12-bit value corresponding to the programmable tone period (TP). The value of a 12-bit value is obtained by combining the contents of the coarse and fine
tone registers.
Coarse Register Clean
Tone Register Tone Channel
R1 A R0
R3 B R2
R5 C R4
┌──┬──┬──┬──┬──┬──┬──┬──┐
│B7│B6│B5│B 4│B3│B2│B1│B0│
└──┴──┴──┴──┼──┴──┴──┴──┤
│ ├──┬──┬──┬──┬──┬──┬──┬──┐
not │ │B7│B6│B5│B4│B3│B2│B1│B0│
used│ ├──┴──┴──┴──┴──┴──┴──┴──┤
│TP│TP│TP│TP│TP│TP│TP│TP│TP│TP│TP│TP│
│11│10│ 9│ 8│ 7│ 6│5│ 4│ 3│ 2│ 1│ 0│
└──┴──┴──┴──┴──┴──┴──┴──omi Twelve-bit tone period (TP) of the tone generator.
Control of the noise generator (register R6).
The frequency of the required noise signal is obtained by dividing the frequency
of the clock generator by 16 and then dividing the result by a 5-bit value, which is located in the five
low-order bits (B4-B0) of register R6.
Register R6.
┌──┬──┬──┬──┬──┬──┬──┬──┐
│B7│B6│B5│B4│B3│B2│B1│B0│
└──┴──┴──┼──┴──┴──┴──┴──┘
Not used│Five-bit noise period
│(NP) noise generator
Mixer and I/O control (register R7).
Register R7 controls three tone/noise mixers and two general purpose I/O
ports. The mixers combine the frequencies of the tone and noise generators of each of the 3 channels.
All possible tone/noise combinations are programmed in the six least significant
bits of register R7 (B5-B0). The direction of information transfer in
general purpose input/output ports (IOA and IOB) is specified by the state of the two most significant bits of register R7.
Register R7.
┌──────┬──────┬──────┬───── ─┬──────┬──────┬──────┬──────┐
B7 │ B6 │ B5 │ B4 │ B3 │ B2 │ B1 │ B0│
└──────┴──────┴──────┴───── ─┴──────┴──────┴──────┴──────┘┌──────┬──────┬──────┬──────┬─ ─────┬──────┬──────┬──────┐
│ │ │Channel │Channel │Channel │Channel │Channel │Channel │
│Port A│Port B│ C │ B │ A │ C │ B │ A │
├──────┴──────┼──────┴────── ┴──────┼──────┴──────┴──────┤
│ Inhibition │ Feed prohibition │ Feed prohibition │
│input functions│ noise frequencies │ tone frequencies │
Amplitude control (registers R10, R11, R12).
The amplitudes of the signals generated by three digital-to-analog converters are set by the contents of the five least significant digits (B4-B0) registers R10, R11, R12, namely:
Amplitude control.
Register R10 - Channel A
Register R11 - Channel B
Register R12 - Channel C
┌──┬──┬──┬──┬──┬──┬──┬──┐
│B7│B6│B5│B4 │B3│B2│B1│B0│
└──┴──┴──┼──┼──┴──┴──┴──┘
not │M ├──┬──┬──┬──┐
use. │L3│L2│L1│L0│
└──┴──┴──┴──┘
Control of the envelope generator (registers R13, R14, R15).
The PGZ implements two independent methods for creating complex shapes
of the output envelope signal:
1. Changing the envelope frequency by programming registers R13,
R14.
2. Changing the shape of the envelope by changing register R15.
Controlling the period of the envelope (registers R13 and R14).
The frequency (period) of the envelope is formed, firstly,by dividing the clock generator frequency by 256 and, secondly, dividing the result by a programmable 16-bit value.
This 16-bit value is formed by combining the contents of the coarse envelope tone registers (R14) and the pure envelope tone registers (R13), namely: Register R14
┌──┬──┬──┬──┬──┬──┬──┬──┐
│B7│B6│B5 │B4│B3│B2│B1│B0│
├──┴──┴──┴──┴──┴──┴──┴──┤ Register R13
│ ├──┬──┬──┬──┬──┬──┬──┬──┐
│ │B7│B6│B5│B4│B3│B2│B1│B0│
│ ├──┴──┴──┴──┴──┴──┴──┴──┤
├──┬──┬── ┬──┬──┬──┬──┬──┼──┬ ──┬──┬──┬──┬──┬──┬── ┤
│EP│EP│EP│EP│EP│EP│EP│EP│EP│EP│EP│EP│EP│EP│EP│EP│
│15│14│13│12│11│10│ 9│ 8│ 7│ 6│ 5│ 4│ 3│ 2│ 1│ 0│
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴ ──┴──┴──┴──┴──┴──┘
Hexadecimal programmable envelope period (EP)
of the envelope generator.
Control of the shape and cycle of the envelope (register R15).
The envelope generator, by dividing the frequency of the envelope by 16, forms and
produces to the amplitude control the shape of the envelope, represented by 16 fixed voltage levels per cycle, and encoded in the 4-bit output counter E3, E2, E1, E0.
The required envelope shape is determined by the contents of the 4 least significant
bits of register R15 (B3-B0). Each of these 4 bits
controls the envelope generatoras follows:
Register R15.
┌──┬──┬──┬──┬──┬──┬──┬──┐
│B7│B6│B5│B 4│B3│B2│B1│B0│
└──┴──┴──┴──┼─┬┴─┬┴─┬┴─┬┘
Not │ │ │ │ │
used│ │ │ │ *Delay
│ │ │ *Alternating
│ │ *Attack
│ *Continuation
└───────────┘
To the envelope generator
Data memory of the input/output ports (registers R16 and R17).
Registers R16 and R17 are used as a buffer data memory
between the data bus "PGZ-processor" (DA7-DA0) and input/output ports (IOA7-IOA0 and IOB7-IOB0).
Placing any data in the buffer registers R16 and R17 does not
affect the generation of the sound picture.
Operation of the digital-to-analog converter.
Digital-to-analog conversion is carried out on a logarithmic
scale and in a normalized 0 to 1 volt voltage range.
The amplitude regulator, through its three 4-bit outputs (
one for each channel A, B, C), carries out amplitude
control of digital-to-analog converters of channels A, B, C, to which
the total signal is supplied from the mixer: noise and/or tone.
Forms of output signals E3, E2, E1, E0 of the generator envelope... Discharges register-│ Signal shapeR15 │
├───┼───┼───┼───┼────────────────
│ 0 │ 0 │ X │ X │Gradual decrease in signal level over one │
│ │ │ │ │envelope period (EP) from maximum to mini- │
│ │ │ │ │small value followed by holding the mini-│
│ │ │ │ │low level. │
├───┼───┼───┼───┼────────────────
│ 0 │ 1 │ X │ X │Gradual increase in signal level over one │
│ │ │ │ │envelope period from minimum to maximum value, after which a sharp jump to mini- │
│ │ │ │ │low level with its subsequent retention. │
├───┼───┼───┼───┼────────────────
│ 1 │ 0 │ 0 │ 0 │Gradual decrease in signal level over one │
│ │ │ │ │period of the envelope from the maximum to the minimum value, after which a sharp jump to the maximum │
│ │ │ │ │low level followed by repetition of the resulting signal shape in each periodenvelope.│
├───┼───┼───┼───┼─────────── ───────────────────── ────────────────┤
│ 1 │ 0 │ 0 │ 1 │The signal shape is similar to the combination “00XX”. │
├───┼───┼───┼───┼────────────────
│ 1 │ 0 │ 1 │ 0 │Gradual decrease in signal level over one │
│ │ │ │ │envelope period from maximum to minimum-│
│ │ │ │ │ value, after which in the next cycle post-│
│ │ │ │ │a further increase in the signal level to the maximum │
│ │ │ │ │value followed by repetition of the resulting │
│ │ │ │ │signal shape. │
├───┼───┼───┼───┼────────────────
│ 1 │ 0 │ 1 │ 1 │The signal shape is the reverse of the │
│ │ │ │ │combination “01XX”. │
├───┼───┼───┼───┼────────────────
│ 1 │ 1 │ 0 │ 0 │The signal shape is the reverse of the │
│ │ │ │ │combination “1000”. │
├───┼───┼───┼───┼────────────────
│ 1 │ 1 │ 0 │ 1 │The signal shape is the reverse of the │
│ │ │ │ │combination "00XX". │
├───┼───┼───┼───┼────────────────
│ 1 │ 1 │ 1 │0 │The signal shape is the reverse of the │
│ │ │ │ │combination “1010”. │
├───┼───┼───┼───┼────────────────
│ 1 │ 1 │ 1 │ 1 │The signal shape is similar to the combination “01XX”. │
└───┴───┴───┴───┴────────────────
ER - envelope period (duration of one cycle).
Graphical representation of the decimal values of the output
signals E3, E2, E1, E0 of the envelope generator.
─┐15 15┌─
└┐14 14┌┘
└┐13 13┌┘
└┐12 12┌┘
└┐11 11┌┘
└┐10 10┌┘
└┐09 09┌┘
└┐08 08┌┘
└┐07 07┌┘
└┐06 06┌┘
└┐05 05┌┘
└┐04 04┌┘
└┐03 0 ┌┘
└┐02 02┌┘
└┐01 01┌┘
└┐ ┌┘
0└───┘0
│ │ │
│<──────EP───────>│<───────EP──────>│
│ (1/F) │ (1/F) │
This figure shows an enlarged diagram of the signal shape corresponding to a combination of 1010 bits B3, B2, B1, B0register R15.
F - envelope frequency.
Output signal of digital-to-analog converter.
U ^
│
│ 15 15
1V ─┼─┐ ┌─
│ │ │
│ │14 14│
0.707 ─┤ └┐ ┌┘
│ │ │
│ │13 13│
0.500 ─┤ └┐ ┌┘
│ │ │
│ │12 12│
0.303 ─┤ └┐ ┌┘
│ │11 11│
0.250 ─┤ └┐ ┌┘
│ │10 10│
0.151 ─┤ └┐ ┌┘
│ │09 09│
0.125 ─┤ └┐08 08┌┘
│ └┐07 07┌┘
│ └┐06 06┌┘
│ └┐05 05┌┘
│ └┐04 04┌┘
│ └┐03 03┌┘
│ *02 02*
│ *01 01*
│ ─────
0 ├─────────────────┬─ ────────────────┬──> F
│<───────EP──────>│<───────EP──────>│
(1/F) (1/F)
U - normalized voltage;
F - envelope frequency.
PGZ block diagram.
/A9 A8 DA7-DA0 BDIR BC2 BC1 DA7-DA0
│ │ │ 8 │ │ │ 8 ^
┌─┴──┴────┴──┐ ┌─┴───┴───┴┐ ┌──────┴──────┐
│Latcher │ │Decoder│<──>│Bidirectional-│
│addresses │<──>│signals │ │new │
│register- │ │control│<──>│buffer │
│decoder │ └──────────┘ └─────────────┘
└──┬───────┬─┘ 8 ^
│16 │/Reset │
┌────┴───────┴─────────────────
│ Sixteen control registers │
│ write/read │
└──────────────────────┬──┬───┬
^ ^ │ │ │ │
8 │ 8 │ │ │ │ │
┌───┴────┐ ┌───┴────┐ │ │ │ │
│Port │ │Port │ │ │ │ │
│input- │ │input- │ │ │ │ │
│output B│ │output A│ │ │ │ │
└────────┘ └────────┘ │ │ │ │
^ ^ │ │ │ │
│ │ │ │ │ │
IOB7-IOB0 IOA7-IOA0 │ │ │ │
┌──────────────┘ ││ │
│ │ │ │
│ ┌────┘ │ │
│ │ │ │
F-такт │ │ │ │ F-такт F-такт
│ │ │ │ │ │ │
┌─┴────┴──┐ E3 ┌────┴────┐ │ ┌──┴────┴──┐ ┌────┴────┐
│Генератор│ E2 │Регулятор│ │ │Генераторы│ │Генератор│
│огибающей│───>│амплитуды│ │ │тона (3) │ │шума │
└─────────┘ E1 └─┬──┬──┬─┘ │ └──┬──┬──┬─┘ └────┬────┘
E0 C│ B│ A│ │ C│ B│ A│ │
4│ 4│ 4│ │ │ │ │ │
│ │ │ │ │ │ │ │
┌────────────────┴──┴──┴─┐ │ ┌──┴──┴──┴──────────┴────┐
│Цифро-аналоговые │ └──>│ Смесители (3) │
│ преобразователи (3) │<──────┤ │
└─────┬────┬────┬────────┘ A,B,C └────────────────────────┘
C│ B│ A│
│ │ │
Аналоговые каналы
Электрические характеристики.
Предельные эксплуатационные нормы:
1. Температура хранения- от -55 до +150oC;
2. Рабочая температура- от 0 до +40oC;
3. Hапряжение питания и все другие напряжения входов/выходов по
отношению к корпусу- от -0.3 до +8.0В.
Превышение этих норм ведет к постепенному выходу генератора из
строя. Работа устройстваunder normal conditions it is characterized
by the data given below:
supply voltage - +5V +-5%
for all inputs logical "0" - 0-0.6V
for all inputs logical "1" - 2.4-5V
for all outputs except analog logical "0" - 0-0.5V
for all outputs except analog logical "1" - 2.4-5V
signal level of analog outputs - 0-6.0 dB
clock frequency - 1.0-2.0 MHz.
The above electrical characteristics correspond to an operating temperature of +25 degrees. C and a normal supply voltage of +5 V.
The microcircuit body can be either plastic or ceramic.
==================== cut line ====================
That’s the end of the fairy tale...
Reply to: Kirill_Fro...@zxnet.spb.ru
p>