Nand2Tetris Questions and Answers Forum
›
Architecture
›
Chapter 5
Login
Register
Search
everywhere
only in this topic
Advanced Search
Memory implementation incorrect but passes test script
Classic
List
Threaded
♦
♦
Locked
3 messages
Options
Loading...
Subscribe via email
Move topic
Pin topic
Unpin topic
Lock topic
Unlock topic
Delete this topic
Delete this topic
Change title and meta tags
Embed post
Permalink
kaganovich
Reply
|
Threaded
Open this post in threaded view
♦
♦
|
More
Loading...
Reply to author
Edit post
Move post
Delete this post
Delete this post and replies
Change post date
Print post
Permalink
Raw mail
May 06, 2013; 10:46am
Memory implementation incorrect but passes test script
I think the Memory test script has a problem.
If I implement Memory.hdl like this:
RAM16K(in=in,load=load,address[0..13]=address[0..13],out=ramOut);
Screen(in=in,load=load,address=address[0..12],out=screenOut);
Keyboard(out=kbdOut);
Mux4Way16(a=ramOut,b=ramOut,c=screenOut,d=kbdOut,sel=address[13..14],out=out);
The test script will pass, but it is posible in case load==1 that the Screen and the RAM will be effected undesirably.
Am I right?
cadet1620
Reply
|
Threaded
Open this post in threaded view
♦
♦
|
More
Loading...
Reply to author
Edit post
Move post
Delete this post
Delete this post and replies
Change post date
Print post
Permalink
Raw mail
May 08, 2013; 3:21pm
Re: Memory implementation incorrect but passes test script
Administrator
See
this post
for Memory test files that do more detailed testing and detect addressing and cross-read/write problems.
--Mark
shidaway
Reply
|
Threaded
Open this post in threaded view
♦
♦
|
More
Loading...
Reply to author
Edit post
Move post
Delete this post
Delete this post and replies
Change post date
Print post
Permalink
Raw mail
Aug 30, 2020; 9:09am
Re: Memory implementation incorrect but passes test script
In reply to
this post
by kaganovich
I used And- and Not-gate to establish the condition that it only loads when load And the particular bit fulfill the condition.
Free forum by Nabble
Edit this page