Implementing Logic Function with a ROM

  • Thread starter Thread starter CoolDude420
  • Start date Start date
  • Tags Tags
    Function Logic
Click For Summary

Discussion Overview

The discussion revolves around implementing a logic function using a Read-Only Memory (ROM) device. Participants explore the conceptual understanding of ROM as a non-volatile storage medium and its application in logic design, particularly in relation to truth tables and output generation for various input combinations.

Discussion Character

  • Homework-related
  • Conceptual clarification
  • Technical explanation

Main Points Raised

  • One participant expresses confusion about the function of a ROM, initially viewing it solely as non-volatile storage and questioning how it can be used in logic functions.
  • Another participant explains that a truth table outlines the outputs for given inputs, suggesting that a ROM operates similarly by storing output data for all input combinations.
  • It is noted that using a ROM can be advantageous over hardwired logic due to its reprogrammability, though potential disadvantages include cost, speed, and silicon area.
  • A participant mentions the need to convert functions to a specific form before using them with a ROM, indicating that the output gates of a ROM are uniform (e.g., all OR gates).
  • One participant proposes a method for conversion involving the complement of the product of maxterms expression and discusses the need to replace AND gates with OR gates.
  • Another participant confirms the correctness of the proposed conversion method and suggests that providing the ROM contents in a table format is sufficient, rather than drawing a circuit diagram.

Areas of Agreement / Disagreement

There is some agreement on the conceptual understanding of ROM and its application in logic functions, but participants express varying levels of clarity and confidence regarding the implementation details and conversion processes. The discussion includes both confirmations and questions, indicating that some aspects remain unresolved.

Contextual Notes

Participants have not fully resolved the specifics of the conversion process or the implications of using ROM in different contexts, such as cost and performance trade-offs.

CoolDude420
Messages
199
Reaction score
9

Homework Statement


6c057f18b9.png


Homework Equations

The Attempt at a Solution


d6afa7111c.jpg


I'm a bit confused with this. I thought a ROM was just a non-volatile storage. I don't understand how this would work. The decoder can only select one of the 8 outputs depending on what it gets at its input. I still attempted it but I am quite sure it isn't correct. Any ideas on how this is meant to work?
 
Physics news on Phys.org
The output "gates" of a ROM are all the same (eg all OR gates) so you have to convert functions B and C to the required form first.

CoolDude420 said:
I'm a bit confused with this. I thought a ROM was just a non-volatile storage. I don't understand how this would work.

It is just non-volatile storage. Think about what a truth table is. It tells you what the outputs are for a given combination of inputs. You can think of a ROM as doing exactly the same thing.

In this example the ROM contains output data for all possible combinations of input from 000 to 111 so it can generate outputs for all possible combinations of input signals. In that respect it's actually better than hard wired logic. If you need to make a change you just reprogram the ROM. No need to rewire or change any logic gates.

Disadvantages might include cost, speed, area of silicon.
 
CWatters said:
The output "gates" of a ROM are all the same (eg all OR gates) so you have to convert functions B and C to the required form first.
It is just non-volatile storage. Think about what a truth table is. It tells you what the outputs are for a given combination of inputs. You can think of a ROM as doing exactly the same thing.

In this example the ROM contains output data for all possible combinations of input from 000 to 111 so it can generate outputs for all possible combinations of input signals. In that respect it's actually better than hard wired logic. If you need to make a change you just reprogram the ROM. No need to rewire or change any logic gates.

Disadvantages might include cost, speed, area of silicon.
e156b04ecb.jpg


Ah. I see. Would this be correct for the conversion? I just took the complement of the product of maxterms expression. (Id have to replace the AND gates with ORs and change the Xs
 
Yes that's correct.

You need not actually draw a circuit with x's and OR gates. You just need to provide the contents of the ROM in the form of a table with the Address and Data fields. Here is an example (different functions to yours)...

ROM.jpg


Although it might be better to label the address inputs A1(X) and A0(Y) and similarly for the data bits D1(A) and D0(B)
 

Similar threads

  • · Replies 13 ·
Replies
13
Views
5K
  • · Replies 6 ·
Replies
6
Views
18K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
5K
  • · Replies 17 ·
Replies
17
Views
3K
  • · Replies 2 ·
Replies
2
Views
3K
Replies
2
Views
4K
  • · Replies 13 ·
Replies
13
Views
3K
  • · Replies 16 ·
Replies
16
Views
3K