74139: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(Created page with 'The '''74139''' (common variants 74LS139, 74HC139) is a dual 2-to-4-line decoder/demultiplexer in the 7400 series. Each side of the chip is a decoder with an active low enable fr…')
 
m (→‎Signal descriptions: we almost exclusively call the signal on the card edge "/ROMSEL", not "PRG /CE". Replace the latter with the former for consistency.)
 
(3 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The '''74139''' (common variants 74LS139, 74HC139) is a dual 2-to-4-line decoder/demultiplexer in the 7400 series.
The '''74139''' (common variants 74LS139, 74HC139) is a dual 2-to-4-line decoder/demultiplexer in the 7400 series.
Each side of the chip is a decoder with an active low enable from a 2-bit address to four active low signals.
Each side of the chip is a decoder with an active low enable from a 2-bit address to four active low signals.
The two decoders can be wired independently, or a /Y from one decoders can be wired to the /E on the other to calculate more complex combinational logic functions.
The two decoders can be wired independently, or a <tt>/Y</tt> from one decoder can be wired to the <tt>/E</tt> on the other to calculate more complex combinational logic functions.


         ,---v---.
== 74139 Pinout ==
         .---v---.
   1/E -o|1    16|-- Vcc
   1/E -o|1    16|-- Vcc
   1A0 --|2    15|o- 2/E
   1A0 --|2    15|o- 2/E
Line 14: Line 15:
         `-------'
         `-------'


Each side computes the following function:
== Signal descriptions ==
* <tt>/E</tt>, <tt>A0</tt>, <tt>A1</tt> are inputs
* <tt>/Y0</tt>, <tt>/Y1</tt>, <tt>/Y2</tt>, <tt>/Y3</tt> are outputs
Each side computes the following function ("x" = don't care):


{| class="tabular"
{| class="tabular" style="text-align:center;"
! /E || A1 || A0 || /Y0 || /Y1 || /Y2 || /Y3
! <tt>/E</tt> || <tt>A1</tt> || <tt>A0</tt> || <tt>/Y0</tt> || <tt>/Y1</tt> || <tt>/Y2</tt> || <tt>/Y3</tt>
|-
|-
| 0 || 0 || 0 || 0 || 1 || 1 || 1
| 0 || 0 || 0 || 0 || 1 || 1 || 1
|-
|-
| 0 || 0 || 0 || 1 || 0 || 1 || 1
| 0 || 0 || 1 || 1 || 0 || 1 || 1
|-
|-
| 0 || 0 || 0 || 1 || 1 || 0 || 1
| 0 || 1 || 0 || 1 || 1 || 0 || 1
|-
|-
| 0 || 0 || 0 || 1 || 1 || 1 || 0
| 0 || 1 || 1 || 1 || 1 || 1 || 0
|-
|-
| 1 || x || x || 1 || 1 || 1 || 1
| 1 || x || x || 1 || 1 || 1 || 1
|}
|}


The NES contains a 74LS139 to produce the PRG /CE signal from M2 and A15.
The NES contains a 74LS139 to produce the <tt>/ROMSEL</tt> signal from <tt>M2</tt> and <tt>A15</tt>.


== References ==
== References ==
*[http://www.datasheetcatalog.com/datasheets_pdf/7/4/H/C/74HC139.shtml Philips 74HC139 datasheet]
*[http://www.datasheetcatalog.com/datasheets_pdf/7/4/H/C/74HC139.shtml Philips 74HC139 datasheet]
[[Category:7400 series|139]]
[[Category:7400 series|139]]

Latest revision as of 21:20, 15 July 2019

The 74139 (common variants 74LS139, 74HC139) is a dual 2-to-4-line decoder/demultiplexer in the 7400 series. Each side of the chip is a decoder with an active low enable from a 2-bit address to four active low signals. The two decoders can be wired independently, or a /Y from one decoder can be wired to the /E on the other to calculate more complex combinational logic functions.

74139 Pinout

       .---v---.
 1/E -o|1    16|-- Vcc
 1A0 --|2    15|o- 2/E
 1A1 --|3    14|-- 2A0
1/Y0 -o|4    13|-- 2A1
1/Y1 -o|5    12|o- 2/Y0
1/Y2 -o|6    11|o- 2/Y1
1/Y3 -o|7    10|o- 2/Y2
 GND --|8     9|o- 2/Y3
       `-------'

Signal descriptions

  • /E, A0, A1 are inputs
  • /Y0, /Y1, /Y2, /Y3 are outputs

Each side computes the following function ("x" = don't care):

/E A1 A0 /Y0 /Y1 /Y2 /Y3
0 0 0 0 1 1 1
0 0 1 1 0 1 1
0 1 0 1 1 0 1
0 1 1 1 1 1 0
1 x x 1 1 1 1

The NES contains a 74LS139 to produce the /ROMSEL signal from M2 and A15.

References