Z80B starts and stops?Z80 control pins not reading a defined logic levelCan a Z80 be powered at 3.3v and still run reliably at 3-4MHz?Memory design with 4 256K X 1 Bit IC's to a Z80Z80 Binary Front Panel DesignHow can z80 uses a 4-bit ALU and return results in a single clock cycle?SRAM isn't blank on powerup, is this normal?Prevent bit-bang data-in line from back powering device?Z80 RD and WR to RD/WR?Why am I Seeing A Weird “Notch” on the Data Line For Some Logical 1s?

How do we avoid CI-driven development...?

Is refreshing multiple times a test case for web applications?

Should I take out a personal loan to pay off credit card debt?

How quickly could a country build a tall concrete wall around a city?

How can glass marbles naturally occur in a desert?

Why is there a need to prevent a racist, sexist, or otherwise bigoted vendor from discriminating who they sell to?

Colleagues speaking another language and it impacts work

What happen if I gain the control of aura that enchants an opponent's creature? Would the aura stay attached?

Is this cheap "air conditioner" able to cool a room?

Can a College of Swords bard use Blade Flourishes multiple times in a turn?

Physics of Guitar frets and sound

How to write "upright" integrals with automatic sizing

Can an SPI slave start a transmission in full-duplex mode?

Arrange a list in ascending order by deleting list elements

Why are the inside diameters of some pipe larger than the stated size?

Dropdowns & Chevrons for Right to Left languages

How can I tell if a flight itinerary is fake?

Tikzcd pullback square issue

Why was CPU32 core created, and how is it different from 680x0 CPU cores?

Do other countries guarantee freedoms that the United States does not have?

Is there a way to create a report for the failed entries while calling REST API

Why should public servants be apolitical?

How to mark beverage cans in a cooler for a blind person?

How do I explain to a team that the project they will work on for six months will 100% fail?



Z80B starts and stops?


Z80 control pins not reading a defined logic levelCan a Z80 be powered at 3.3v and still run reliably at 3-4MHz?Memory design with 4 256K X 1 Bit IC's to a Z80Z80 Binary Front Panel DesignHow can z80 uses a 4-bit ALU and return results in a single clock cycle?SRAM isn't blank on powerup, is this normal?Prevent bit-bang data-in line from back powering device?Z80 RD and WR to RD/WR?Why am I Seeing A Weird “Notch” on the Data Line For Some Logical 1s?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








2












$begingroup$


I've decided to take some time to refresh my electronics knowledge after 30 years out of college. I've run into a small problem that I can't quite figure out and need a pointer.



TLDR: The Z80 initially starts (watching M1 strobing) but halts after just two or three, sometimes more, sometimes fewer, machine cycles.



I've built an ~ 5hz 555 astable circuit to drive the clock line of a Z80B. The Z80B has all of the data lines pulled down to ground. The INT, NMI, HALT, BUSRQ, and WAIT are all pulled high. I have the RESET on an RC circuit to go high after 1 second, plus a push-button to pull it low for a manual reset (pictured below... Ignore the crystal oscillator circuit; that isn't connected to anything).
556 wired as astable 555 @~5hz and Z80 wired for NOPs



The 555 is putting out a nice steady square pulse at about a 50% duty cycle. M1 will go high during reset and then cycle between one and five times, but then stops (seeming to indicate that the processor has stopped). With the data lines pulled to zero, I'm expecting it to continue to run, executing NOPs.



Can someone see anything obvious that I've done wrongly here? The thing that keeps running through my head (and that I can't seem to find any data on anywhere) is that the clock might be too slow if the Z80B uses dynamic registers internally. I can't seem to locate any authoritative datasheet for the Z80B.










share|improve this question











$endgroup$













  • $begingroup$
    Just gonna throw this out there: add ceramic decoupling caps for the Z80 and every other IC. Proximity matters.
    $endgroup$
    – DKNguyen
    Jul 29 at 15:07











  • $begingroup$
    Ah, yes.. I'll do that right now. I forgot that basic. :)
    $endgroup$
    – David Hoelzer
    Jul 29 at 15:17










  • $begingroup$
    David, went through a few data sheets for generic Z80. Seems that their CMOS version allows a very low frequency clock, so you should be OK. But their NMOS version looks to be dynamic as you suspect...a clock whose period is > 2us may balk. Don't know whether your Z80B is CMOS or NMOS.
    $endgroup$
    – glen_geek
    Jul 29 at 16:14










  • $begingroup$
    @glen_geek Thanks... I can't seem to find a good way to check, either. I'm assuming that since it is apparently functioning at 5 hz, it's CMOS.. though it is doing this odd thing when it gets to address greater than 0x01FF... It may get as high as 0x2FF, but then seems to halt.. Also, the 9th and 10th bits in the address might oscillate inverse to the M1 line. I have not yet worked out why those two lines are acting differently.
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:22

















2












$begingroup$


I've decided to take some time to refresh my electronics knowledge after 30 years out of college. I've run into a small problem that I can't quite figure out and need a pointer.



TLDR: The Z80 initially starts (watching M1 strobing) but halts after just two or three, sometimes more, sometimes fewer, machine cycles.



I've built an ~ 5hz 555 astable circuit to drive the clock line of a Z80B. The Z80B has all of the data lines pulled down to ground. The INT, NMI, HALT, BUSRQ, and WAIT are all pulled high. I have the RESET on an RC circuit to go high after 1 second, plus a push-button to pull it low for a manual reset (pictured below... Ignore the crystal oscillator circuit; that isn't connected to anything).
556 wired as astable 555 @~5hz and Z80 wired for NOPs



The 555 is putting out a nice steady square pulse at about a 50% duty cycle. M1 will go high during reset and then cycle between one and five times, but then stops (seeming to indicate that the processor has stopped). With the data lines pulled to zero, I'm expecting it to continue to run, executing NOPs.



Can someone see anything obvious that I've done wrongly here? The thing that keeps running through my head (and that I can't seem to find any data on anywhere) is that the clock might be too slow if the Z80B uses dynamic registers internally. I can't seem to locate any authoritative datasheet for the Z80B.










share|improve this question











$endgroup$













  • $begingroup$
    Just gonna throw this out there: add ceramic decoupling caps for the Z80 and every other IC. Proximity matters.
    $endgroup$
    – DKNguyen
    Jul 29 at 15:07











  • $begingroup$
    Ah, yes.. I'll do that right now. I forgot that basic. :)
    $endgroup$
    – David Hoelzer
    Jul 29 at 15:17










  • $begingroup$
    David, went through a few data sheets for generic Z80. Seems that their CMOS version allows a very low frequency clock, so you should be OK. But their NMOS version looks to be dynamic as you suspect...a clock whose period is > 2us may balk. Don't know whether your Z80B is CMOS or NMOS.
    $endgroup$
    – glen_geek
    Jul 29 at 16:14










  • $begingroup$
    @glen_geek Thanks... I can't seem to find a good way to check, either. I'm assuming that since it is apparently functioning at 5 hz, it's CMOS.. though it is doing this odd thing when it gets to address greater than 0x01FF... It may get as high as 0x2FF, but then seems to halt.. Also, the 9th and 10th bits in the address might oscillate inverse to the M1 line. I have not yet worked out why those two lines are acting differently.
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:22













2












2








2





$begingroup$


I've decided to take some time to refresh my electronics knowledge after 30 years out of college. I've run into a small problem that I can't quite figure out and need a pointer.



TLDR: The Z80 initially starts (watching M1 strobing) but halts after just two or three, sometimes more, sometimes fewer, machine cycles.



I've built an ~ 5hz 555 astable circuit to drive the clock line of a Z80B. The Z80B has all of the data lines pulled down to ground. The INT, NMI, HALT, BUSRQ, and WAIT are all pulled high. I have the RESET on an RC circuit to go high after 1 second, plus a push-button to pull it low for a manual reset (pictured below... Ignore the crystal oscillator circuit; that isn't connected to anything).
556 wired as astable 555 @~5hz and Z80 wired for NOPs



The 555 is putting out a nice steady square pulse at about a 50% duty cycle. M1 will go high during reset and then cycle between one and five times, but then stops (seeming to indicate that the processor has stopped). With the data lines pulled to zero, I'm expecting it to continue to run, executing NOPs.



Can someone see anything obvious that I've done wrongly here? The thing that keeps running through my head (and that I can't seem to find any data on anywhere) is that the clock might be too slow if the Z80B uses dynamic registers internally. I can't seem to locate any authoritative datasheet for the Z80B.










share|improve this question











$endgroup$




I've decided to take some time to refresh my electronics knowledge after 30 years out of college. I've run into a small problem that I can't quite figure out and need a pointer.



TLDR: The Z80 initially starts (watching M1 strobing) but halts after just two or three, sometimes more, sometimes fewer, machine cycles.



I've built an ~ 5hz 555 astable circuit to drive the clock line of a Z80B. The Z80B has all of the data lines pulled down to ground. The INT, NMI, HALT, BUSRQ, and WAIT are all pulled high. I have the RESET on an RC circuit to go high after 1 second, plus a push-button to pull it low for a manual reset (pictured below... Ignore the crystal oscillator circuit; that isn't connected to anything).
556 wired as astable 555 @~5hz and Z80 wired for NOPs



The 555 is putting out a nice steady square pulse at about a 50% duty cycle. M1 will go high during reset and then cycle between one and five times, but then stops (seeming to indicate that the processor has stopped). With the data lines pulled to zero, I'm expecting it to continue to run, executing NOPs.



Can someone see anything obvious that I've done wrongly here? The thing that keeps running through my head (and that I can't seem to find any data on anywhere) is that the clock might be too slow if the Z80B uses dynamic registers internally. I can't seem to locate any authoritative datasheet for the Z80B.







z80






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jul 30 at 11:23







David Hoelzer

















asked Jul 29 at 15:03









David HoelzerDavid Hoelzer

1528 bronze badges




1528 bronze badges














  • $begingroup$
    Just gonna throw this out there: add ceramic decoupling caps for the Z80 and every other IC. Proximity matters.
    $endgroup$
    – DKNguyen
    Jul 29 at 15:07











  • $begingroup$
    Ah, yes.. I'll do that right now. I forgot that basic. :)
    $endgroup$
    – David Hoelzer
    Jul 29 at 15:17










  • $begingroup$
    David, went through a few data sheets for generic Z80. Seems that their CMOS version allows a very low frequency clock, so you should be OK. But their NMOS version looks to be dynamic as you suspect...a clock whose period is > 2us may balk. Don't know whether your Z80B is CMOS or NMOS.
    $endgroup$
    – glen_geek
    Jul 29 at 16:14










  • $begingroup$
    @glen_geek Thanks... I can't seem to find a good way to check, either. I'm assuming that since it is apparently functioning at 5 hz, it's CMOS.. though it is doing this odd thing when it gets to address greater than 0x01FF... It may get as high as 0x2FF, but then seems to halt.. Also, the 9th and 10th bits in the address might oscillate inverse to the M1 line. I have not yet worked out why those two lines are acting differently.
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:22
















  • $begingroup$
    Just gonna throw this out there: add ceramic decoupling caps for the Z80 and every other IC. Proximity matters.
    $endgroup$
    – DKNguyen
    Jul 29 at 15:07











  • $begingroup$
    Ah, yes.. I'll do that right now. I forgot that basic. :)
    $endgroup$
    – David Hoelzer
    Jul 29 at 15:17










  • $begingroup$
    David, went through a few data sheets for generic Z80. Seems that their CMOS version allows a very low frequency clock, so you should be OK. But their NMOS version looks to be dynamic as you suspect...a clock whose period is > 2us may balk. Don't know whether your Z80B is CMOS or NMOS.
    $endgroup$
    – glen_geek
    Jul 29 at 16:14










  • $begingroup$
    @glen_geek Thanks... I can't seem to find a good way to check, either. I'm assuming that since it is apparently functioning at 5 hz, it's CMOS.. though it is doing this odd thing when it gets to address greater than 0x01FF... It may get as high as 0x2FF, but then seems to halt.. Also, the 9th and 10th bits in the address might oscillate inverse to the M1 line. I have not yet worked out why those two lines are acting differently.
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:22















$begingroup$
Just gonna throw this out there: add ceramic decoupling caps for the Z80 and every other IC. Proximity matters.
$endgroup$
– DKNguyen
Jul 29 at 15:07





$begingroup$
Just gonna throw this out there: add ceramic decoupling caps for the Z80 and every other IC. Proximity matters.
$endgroup$
– DKNguyen
Jul 29 at 15:07













$begingroup$
Ah, yes.. I'll do that right now. I forgot that basic. :)
$endgroup$
– David Hoelzer
Jul 29 at 15:17




$begingroup$
Ah, yes.. I'll do that right now. I forgot that basic. :)
$endgroup$
– David Hoelzer
Jul 29 at 15:17












$begingroup$
David, went through a few data sheets for generic Z80. Seems that their CMOS version allows a very low frequency clock, so you should be OK. But their NMOS version looks to be dynamic as you suspect...a clock whose period is > 2us may balk. Don't know whether your Z80B is CMOS or NMOS.
$endgroup$
– glen_geek
Jul 29 at 16:14




$begingroup$
David, went through a few data sheets for generic Z80. Seems that their CMOS version allows a very low frequency clock, so you should be OK. But their NMOS version looks to be dynamic as you suspect...a clock whose period is > 2us may balk. Don't know whether your Z80B is CMOS or NMOS.
$endgroup$
– glen_geek
Jul 29 at 16:14












$begingroup$
@glen_geek Thanks... I can't seem to find a good way to check, either. I'm assuming that since it is apparently functioning at 5 hz, it's CMOS.. though it is doing this odd thing when it gets to address greater than 0x01FF... It may get as high as 0x2FF, but then seems to halt.. Also, the 9th and 10th bits in the address might oscillate inverse to the M1 line. I have not yet worked out why those two lines are acting differently.
$endgroup$
– David Hoelzer
Jul 29 at 17:22




$begingroup$
@glen_geek Thanks... I can't seem to find a good way to check, either. I'm assuming that since it is apparently functioning at 5 hz, it's CMOS.. though it is doing this odd thing when it gets to address greater than 0x01FF... It may get as high as 0x2FF, but then seems to halt.. Also, the 9th and 10th bits in the address might oscillate inverse to the M1 line. I have not yet worked out why those two lines are acting differently.
$endgroup$
– David Hoelzer
Jul 29 at 17:22










1 Answer
1






active

oldest

votes


















3












$begingroup$

Thanks to @DKNguyen for reminding me of a super basic standard "thing to do". I neglected to install decoupling capacitors between the power and ground of the 555 (556) and the Z80B.



With 1nF capacitors installed, it immediately begins to behave exactly as expected.






share|improve this answer









$endgroup$














  • $begingroup$
    You can accept this answer to indicate that your question is solved.
    $endgroup$
    – Transistor
    Jul 29 at 16:56










  • $begingroup$
    I can't accept it for another 36 hours.. But thanks! @Transistor
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:19













Your Answer






StackExchange.ifUsing("editor", function ()
return StackExchange.using("schematics", function ()
StackExchange.schematics.init();
);
, "cicuitlab");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "135"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f450694%2fz80b-starts-and-stops%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









3












$begingroup$

Thanks to @DKNguyen for reminding me of a super basic standard "thing to do". I neglected to install decoupling capacitors between the power and ground of the 555 (556) and the Z80B.



With 1nF capacitors installed, it immediately begins to behave exactly as expected.






share|improve this answer









$endgroup$














  • $begingroup$
    You can accept this answer to indicate that your question is solved.
    $endgroup$
    – Transistor
    Jul 29 at 16:56










  • $begingroup$
    I can't accept it for another 36 hours.. But thanks! @Transistor
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:19















3












$begingroup$

Thanks to @DKNguyen for reminding me of a super basic standard "thing to do". I neglected to install decoupling capacitors between the power and ground of the 555 (556) and the Z80B.



With 1nF capacitors installed, it immediately begins to behave exactly as expected.






share|improve this answer









$endgroup$














  • $begingroup$
    You can accept this answer to indicate that your question is solved.
    $endgroup$
    – Transistor
    Jul 29 at 16:56










  • $begingroup$
    I can't accept it for another 36 hours.. But thanks! @Transistor
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:19













3












3








3





$begingroup$

Thanks to @DKNguyen for reminding me of a super basic standard "thing to do". I neglected to install decoupling capacitors between the power and ground of the 555 (556) and the Z80B.



With 1nF capacitors installed, it immediately begins to behave exactly as expected.






share|improve this answer









$endgroup$



Thanks to @DKNguyen for reminding me of a super basic standard "thing to do". I neglected to install decoupling capacitors between the power and ground of the 555 (556) and the Z80B.



With 1nF capacitors installed, it immediately begins to behave exactly as expected.







share|improve this answer












share|improve this answer



share|improve this answer










answered Jul 29 at 15:20









David HoelzerDavid Hoelzer

1528 bronze badges




1528 bronze badges














  • $begingroup$
    You can accept this answer to indicate that your question is solved.
    $endgroup$
    – Transistor
    Jul 29 at 16:56










  • $begingroup$
    I can't accept it for another 36 hours.. But thanks! @Transistor
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:19
















  • $begingroup$
    You can accept this answer to indicate that your question is solved.
    $endgroup$
    – Transistor
    Jul 29 at 16:56










  • $begingroup$
    I can't accept it for another 36 hours.. But thanks! @Transistor
    $endgroup$
    – David Hoelzer
    Jul 29 at 17:19















$begingroup$
You can accept this answer to indicate that your question is solved.
$endgroup$
– Transistor
Jul 29 at 16:56




$begingroup$
You can accept this answer to indicate that your question is solved.
$endgroup$
– Transistor
Jul 29 at 16:56












$begingroup$
I can't accept it for another 36 hours.. But thanks! @Transistor
$endgroup$
– David Hoelzer
Jul 29 at 17:19




$begingroup$
I can't accept it for another 36 hours.. But thanks! @Transistor
$endgroup$
– David Hoelzer
Jul 29 at 17:19

















draft saved

draft discarded
















































Thanks for contributing an answer to Electrical Engineering Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

Use MathJax to format equations. MathJax reference.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f450694%2fz80b-starts-and-stops%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Category:9 (number) SubcategoriesMedia in category "9 (number)"Navigation menuUpload mediaGND ID: 4485639-8Library of Congress authority ID: sh85091979ReasonatorScholiaStatistics

Circuit construction for execution of conditional statements using least significant bitHow are two different registers being used as “control”?How exactly is the stated composite state of the two registers being produced using the $R_zz$ controlled rotations?Efficiently performing controlled rotations in HHLWould this quantum algorithm implementation work?How to prepare a superposed states of odd integers from $1$ to $sqrtN$?Why is this implementation of the order finding algorithm not working?Circuit construction for Hamiltonian simulationHow can I invert the least significant bit of a certain term of a superposed state?Implementing an oracleImplementing a controlled sum operation

Magento 2 “No Payment Methods” in Admin New OrderHow to integrate Paypal Express Checkout with the Magento APIMagento 1.5 - Sales > Order > edit order and shipping methods disappearAuto Invoice Check/Money Order Payment methodAdd more simple payment methods?Shipping methods not showingWhat should I do to change payment methods if changing the configuration has no effects?1.9 - No Payment Methods showing upMy Payment Methods not Showing for downloadable/virtual product when checkout?Magento2 API to access internal payment methodHow to call an existing payment methods in the registration form?