B&B’s (by )

here are some B&B's for people to be getting along with - I will post more later!

Longford Lodge 68, Tewkesbury Rd, Longford, Gloucester, Gloucestershire GL2 9EH Tel: 01452 526380

FRIAR TUCKS 137, Bristol Road, Quedgeley, Gloucester, Gloucestershire GL2 4PQ Tel: 01452 720312
Classification: Bed & Breakfast

Farmhouse Fayre Long Green, Forthampton, Gloucester, Gloucestershire GL19 4QH Tel: 01684 833209

Chequers Bed & Breakfast Chequers, Pirton Lane, Churchdown, Gloucester, Gloucestershire GL3 2QP Tel: 01452 857092

Ashleworth Court Bed & Breakfast Ashleworth Court, The Quay, Ashleworth, Gloucester, Gloucestershire GL19 4JA Tel: 01452 700241

Gemini Guest House 83a, Innsworth Lane, Longlevens, Gloucester, Gloucestershire GL2 0TT Tel: 01452 415849

Forest Gate Ross Rd, Huntley, Gloucester, Gloucestershire GL19 3EU Tel: 01452 831192

Crickley Court Guest House Crickley Court, Crickley Hill, Witcombe, Gloucester, Gloucestershire GL3 4UF Tel: 01452 863634

Kilmorie Gloucester Rd, Staunton, Gloucester, Gloucestershire GL19 3RQ Tel: 01452 840224
Classification: Bed & Breakfast

Dogshill Staunton, Gloucester, Gloucestershire GL19 3PD Tel: 01452 840231
Classification: Bed & Breakfast

Rolly Dinosuar, Free Will and Fridge Magnets :) (by )

Jean is developing fast - less than a week ago we were awakened by the sounds of rolly dinosuar. This is a big dinosuar toy that you put little roll-along-balls in, the balls either fall down some steps which are its tail, slide down a ramp and out of its mouth, or travel through its belly making a pendulum swing. This is all accompanied by noise of the jinggly fun baby toy type and if the ball comes out of the mouth it even raws!

Now for a baby its quiet hard to post the balls in as a) you need coordination, b) the holes are only just big enough and c) you have to remember to let go of the ball but not to soon! The next morning after we heared her setting it off - she had had a contanment breach of the nappy kind so we had to clear her cot of everything for a wash - including rolly dinosuar and tho! She had been stuffing no the roll alongs balls in it but the little juggling bean bags instead - some of which where really wedged! So is had worked outposting things but not whats was theright shape.

That day though we showed her again about puttint the balls into rolly dinosuar and lo! She did it with a 25% success rate - now its the first thing she does when she is put in the cot and she had an 80% success rate 🙂

On the slightly daunting side she has also discovered her own version of no - and its stroppy and normally accumpanied by a glare to scorch! She has taken to bad manniedly through her food or bottle over the edge of the high chair if she doesnt want it - I'm trying to show her that she just need to shake her head to say no - having moderate success - ie she shakes her head and if I dont move on it quick enough she still throughs it angrily over the side - little moo cow! Also yesturday we had the first histrionics - I took her emty bottle away to replace it with her fresh full one and I swear it it was a tantrum 🙁 She snatched it back! And wailed crossly at me, so i took it away again to give her the fresh bottle - which she throw and snatched back the old one - so I took the old one away completely - feeling mean and telling her not to snatch and wondering if she understands enough yet - I think she realised she had done something wrong becuase she stopped glaring and wailing and just looked worried 🙁 But we read Elmas Friends together and she cheered up.

I also made her cry becuase I found some of her toys 'discarded' in a cardboard box we had given her, so I started taking them out and giving them back to her and she cried - I put them back in the box and she stopped - I asked her if they were supposed to be in their and she put another toy in the box - opps! Silly Mummy there she was painstakingly putting all heer toys in a box and I come along and take them out again! Oh well.

We did have lots of fun with the letter fridge magnets that me and Al got as a wedding presant 🙂

She mastered pulling them off and putting them back on the fridge and we spelt her name (well obviously I spelt her name!) - the fun only ended when she desided too start eating them - so I substitueted them with baby bell and everyone was happy 🙂

JEan understands the concept of sharing - sort of ie shes got the hang of giving you something - including sharing her bottle with you (you have been warned) but she hasnt quiet got the idea of no more yet - again I'm hoping that this will help with the food issues I mentioned earlier!

Thank Goodness I used Acrylics! (by )

I was painting last night just some more alien landscapes, I had dry pictures on the other half of the table with books over the edges - to try and make them flat (the edges curl up and I've found if you leave them long enough with wieght on the edges they straighten up a bit), when I nocked the water pot over 🙁 If the dry pictures had been water colours they would have been ruined!!!! But fortunatly I discoved last year - acrylics!

I love acrylics 🙂 You can make them look like oils or water colours or poster paint! But they dry water proof! The are easy to mix into new colours and come in a huge range anyway - plus you can get many different textures 🙂

Last year for our anniversary I painted Al a picture and he got me a book on acrylics 🙂

At some point I will set an on line gallery up but I just have to much to do right now - but I'll let you all know!

More digital logic simulation (by )

Playing around with my digital logic simulator, I've found a few cases it doesn't handle well... but, luckily, I've found easy fixes for them 🙂

The first was that if a change to the inputs of a gate occurred that needn't change the output (eg, the inputs of an AND gate changing from 10 to 00), then the change would cause the gate to compute a new value (the same as the previous value) and schedule that the output should change to this value after one gate delay.

However, the code that schedules an output change handles gate delay by scheduling a change of the output driver to an indeterminate state a very small time in the future, then a change to the final value after the specified gate delay. This means that changing the inputs of an AND gate from 00 to 01 cause the output to be indeterminate for one gate delay, which is wrong.

The obvious solution is to make the gate smarter. Make it figure out if the input change it's being notified of will actually affect the output, by tracking the states of inputs or outputs, and forbid it from scheduling a change to a new state unless it really is a new state. However, this adds complexity to the gates, and I wanted to add a lot of devices to the system beyond simple gates without needing to give them all their own change-elimination logic.

So I wanted something built into the simulation core. And, luckily, a simple answer presented itself.

Now, as I mentioned before, a line has three states: 0, 1, and floating. But since many device outputs ('drivers') may be connected to the same line, a driver may actually be in one of four states: 0, 1, floating (?), or high impedance (Z). The latter state means the driver isn't driving, and so has no effect on the line, either way.

I'd since added support for "weak logic"; if two drivers on the same line are driving 0 and 1, then the system signals an error, since that situation would cause damage in a real circuit. However, weak drivers, as the name suggests, exert a "weak" pull on the line. If no drivers on the line are exerting 0 or 1, but one or more drivers exert a weak 1 (which I assigned the symbol '+'), then the resulting line state is 1. However, if another dirver exerts 0 or 1 then that is the resulting line state, with no error due to the conflicting weak 1. If there are weak 1s and weak 0s both being driver, then unless a strong 1 or 0 overrides it, the resulting line state is still ?. I assigned the weak 1 and weak 0 states the symbols '+' and '-' respectively.

In order to remove the problem of a temporarily floating line when the inputs of a gate change in ways that wouldn't change the output, I altered the code that scheduled a transition. Rather than going to the ? state for the gate delay then going to the output state, I made it instead schedule the driver to go into a 'rising' or 'falling' state if the final state was to be a 1 or a 0, respectively. To cover the weak logic, I also defined 'weakly rising' and 'weakly falling' states for when the output is shifting towards a weak 1 or 0. I gave the rising and falling states the symbols '>' and '< ', and the weak versions '}' and '{'.

Now, when the scheduler actually makes the change to the driver into a rising or falling state, I made it check the previous state of the driver. If the driver was 1 when a rising change occured, then it's just leave the driver in the 1 state; otherwise, it'd put it into the floating state. Likewise, if the driver was 0 when it was scheduled to start falling, it'd just stay at 0, otherwise it'd go float. That way, changes from 1 to 1, from 0 to 0, and from + (weak 1) to + and - (weak 0) to - don't cause any actual change in the driver's state, and thus have no effect on the driven line.

But as my free time ran out, I was still faced with another problem; imagine an XOR gate with two inputs, A and B, and an output, X. Imagine the XOR gate has a gate delay of one nanosecond. Now, imagine A and B are both 0; therefore, X is 0. Also, imagine that the lines feeding A and B have a transition time of 0.01 nanoseconds.

Now, if A starts to change to 1, this will appear as A entering the ? state, then 0.01 nanoseconds later, becoming 1. This will cause X to become ?, then 1.01 ns later, becoming 1 too, after the transition time of A plus the gate delay.

But if A changes, then B changes 0.1 nanoseconds later, we have an interesting situation. The timetable looks like this:

  1. 0ns: A becomes ?, X becomes ?
  2. 0.01ns: A becomes 1, and X is scheduled to become 1 at time 1.01ns
  3. 0.1ns: B becomes ?, and X becomes ?
  4. 0.11ns: B becomes 1, and X is scheduled to become 0 at time 1.11ns
  5. 1.01ns: X becomes 1
  6. 1.11ns: X becomes 0

This is clearly wrong. For a start, we have an instant transition from 1 to 0 on X at 1.11ns, which is physically impossible. What SHOULD happen is that X should remain in the ? state until 1.11ns, then become 0, never actually settling on a stable 1 output.

Anyway, I ran out of time while thinking about that and had to return to work, but while thinking about it today it's occurred to me that the solution for the past problem can be adapted to solve this one, too. As it stands, my solution to the past problem was to make the code that actually applies a scheduled change to the state of a driver handle requests to change to the < , >, {, or } states - which represent the 'rising' or 'falling' before settling at a final logic level - by checking to see if the driver is already in the 'target' state and, if so, leaving it be, otherwise going to the ? state.

I realised that I could fix this second problem by making this code actually set the state of the driver to < , >, {, or } rather than ?, and have the code that checks the states of all the drivers on a line to compute the final line state treat them all as ?. However, when the scheduler requests that a driver's state change to a final logic level, the code should at that point check the existing state of the line is indeed the appropriate rising/falling state. If it is, then no other state changes are overlapping with this one, so the change can go ahead. If not - for example, if the driver's output is rising, when the scheduler tells the driver to enter the 0 state - then we know that transitions have overlapped, and to ignore the change to 0.

Now all I need is some more free time to implement this...

But it's interesting just how complex a good simulator of digital logic can be. There's now eleven states a driver can be in! The original 0, 1, or ?, then the high-impedance state Z, then the weak versions -.+. ~, then the rising/falling states < , >, {, and } - all just to generate the three possible resulting states of the line once all the drivers have been taken into account, 0, 1, or ?...

The Weekend (by )

This weekend was quiet cool - we went to the Witcomb village fete where I managed to pick up two Terry Pratchettes I didnt already have and an audio cassette of Truckers 🙂 There was also a skunk there - a real one, I assume it had had its scent glands removed! It seemed content and happy and wasnt in a cage though was on a lead. There were also ferrets and weasles - Live weasles, in one whole piece unlike the poor baby one Babara brought in at breakfast last weekend that Tim had got to 🙁

We did general household stuff and also went to Cranham Priase to see if it was the sort of service we wanted at the Christening and meet lots more people from the village who we have never even seen before!

WordPress Themes

Creative Commons Attribution-NonCommercial-ShareAlike 2.0 UK: England & Wales
Creative Commons Attribution-NonCommercial-ShareAlike 2.0 UK: England & Wales