Showing posts from 2013

Believing the Hype(r-V)

An update on my Hyper-V adventures: I tore it all apart and rebuilt to clean up my mistakes from the first time around, and it is much simpler this time.  Here's a rough set of steps: Make sure you have a working Windows domain first (2012 is preferable, but 2008+ works) It's best to have one Windows Server 2012 machine to administer everything from. Boot the host from the DVD you built, and install onto the local storage.  At this point it's better if any external storage is disabled After the reboots, log in, set up one NIC and join the domain Install MPIO if required Attach the external storage if required Use the Storage manager to configure it.  There's another post coming on why you don't need DISKPART anymore Tell Hyper-V how to use the extra storage Create a Virtual Switch to connect to the outside network Go virtualise something. Next time, we'll dive more into the intricacies of the Hyper-V universe

FreeBSD, IBM x-Series and UEFI

FreeBSD, IBM x-Series and UEFI I banged my head on the rack for quite a while getting an x3250M3 to boot FreeBSD 9.1 recently, and I thought I would share what I learned. I am using the standard LSI Logic RAID controller (mpt device) with a pair of mirrored 500GB SATA drives.  Ultimately I intend to attach it to a DS4700 array I have lying around in the lab as well, but that's a topic for another post.   So we could boot from the Mylex controller, it is essential that you enable "legacy" boot in the boot manager I could boot from the 9.1 (AMD64) DVD and everything would install just fine.  When I rebooted, the system would just hang.  Oddly enough, I could boot NetBSD from the same machine, so what was the difference? Probably a lot, but then I stumbled across a FreeBSD UEFI WIKI, which had the following gem: " Partitions not seen. When using GPT, FreeBSD will create a protective MBR. This MBR has one partition entry coveri

OK Hyper-V, it's time to put up or shut up

Believe the Hype(r-V)? I run a modest-sized VMWare shop, and we just went through the exercise of moving to VSphere 5.1, so why am I writing about Microsoft's Hyper-V Server 2012? Mostly because I can.  More and more people I meet these days are coming back to look at Hyper-V.  It hasn't been " quite there " up till now, but by all reports in it's 2012 incarnation, there is much to recommend it. Firstly, the licensing: Hyper-V Server 2012 is a free download from Microsoft .  OK, so is VMWare or Xen, but Microsoft have effectively uncoupled Hyper-V and Windows.  But you'd better like PowerShell, because that's all you get out of the box to manage it.  And like ESXi, about all you can do is to complete the basic setup. Hardware offload of IPSec: For us, this is pretty important.  We use IPSec heavily, and it's a pig within a VM.  Hyper-V lets me offload this task from the guest to the physical hardware in the system (I'm speculating how t

Forward To The Past - 6

How are we going to power this thing? To start with, I have been using a bench power supply.  This is a very nice device, but not a good long-term solution. When the project is finished, I will most likely use a Jaycar MP3486 5V regulated plugpack .  These devices retail for around $A20 I don't think it's worth even designing a power supply.  We need only a single 5V rail and this supply has a 1.5A capacity which should be sufficient. If it's not enough, there is the MP3480 with a 3A rating. You might need to be a little forceful to use the latter with a breadboard however, because of the wire gauge.

Forward To The Past - 5

Single Stepping So far, there's no reason why things should not just work.  But what if there's a problem?  Last night I was trying to work out why one of my address outputs didn't work right, and it occurred to me that since the Z80 is essentially a static processor, it would be pretty easy to add a single-step clock to our design so far. All this requires is a 74LS00 a Single-Pole Double-Throw (SPST) pushbutton switch and a couple of resistors.  Now, for each push of the switch we get one clock transition.  I will update the main schematic soon to reflect this change, and provide a way of selecting either option without rewiring, but since I'm working on breadboards, this is not too big a challenge to change over at the moment. Another option would be to use a very low speed clock.  We could either have a separate RC oscillator, or divide down the 8MHz signal to pretty much anything we like. What would you rather see?

Forward To The Past - 4

Well Buffer Me... Having got our CPU up and running (sort of), the next step is to complete most of the core circuitry around the CPU. Historically, microprocessors were pretty fragile devices, and had a very limited fanout capability. That is, the ability to drive a number of integrated circuit inputs from it's output pins.  The solution is to add a driver or "buffer" device between the CPU and anything it needs to talk to. I will concede it isn't strictly necessary in our design but since I don't know what I am going to be connecting this device to in the future, better to start with a solid foundation. Right? One, Zero and Huh? But it gets a little more complicated, and I think we need to dive into some theory.  If you're an old hand feel free to skip ahead. Still here?  Good... We know there are two logic states High and Low (or 1 and 0 if you prefer) and we also know that multiple devices can't share the same wire in a simple circuit bec

Forward To The Past - 3

One tiny victory tonight: If you tie all the data lines of a Z80 CPU low, then tie RST, BUSREQ, WAIT, INT and NMI high and apply a clock you get a rather large 16-bit counter.  Using an oscilloscope or even a fast logic probe, you will see the address lines cycling through Why?  Well opcode 00 is NOP (No Operation), so the address counter just moves on to the next address.  Other useful signs of life will be: /MREQ and /RD will be low (we're reading memory) while /IOREQ and /WR will be high.  HLT will also be high. I would also recommend using a packaged crystal oscillator, as it's just one less thing to have to get working. So for our first test, the wiring will be: Pin  Signal  Tie-to 16   /INT         +5 17  /NMI         +5 24  /WAIT      +5 25  /BUSREQ +5 26  /RST          +5   7  D4              GND   8  D3              GND   9  D5              GND 10  D6              GND 12  D2              GND 13  D7              GND 14  D0              GND 15

Foward to the past - 2

Foward to the past - 2 Almost everything arrived just moments ago from Element 14 .  By "almost everything", the only thing missing is the Z85C300 SIO chip.  But I can make a start without it I hope.

Foward to the past

OK, I admit it I am a bit old when it comes to the technology business.  I built my first "computer" such that it was in 1977 when I was thirteen years old.  I still have it in a box someplace too. So this started out as an exercise to show my kids (whom I love dearly, but see computers simply as commodities) just what is involved.  Before you all think I am a complete sadist one is studying mechatronic engineering, and another wants to work in IT when he finishes school.  (There's also an architect and a three year old who wants to be a doctor, but I digress) The plan was pretty simple.  Build a functional Z80 system from scratch.  Simple in principle, and hopefully execution as well.  When I mapped out the task I came up with the following: Create a simple design, based on datasheets.  Processor, RAM, ROM, Serial and Parallel I/O Get all the parts together Assemble it on a set of breadboards Write a simple monitor ROM Find something meaningful for it to do when