I'm excited to go live again today, it's for the second time. Had the morning lesson was lesson number five from the workbook, but yeah, what was coming to me today was to talk to you about our online monthly retreat that starts tomorrow. There'll be a couple sessions tomorrow and then there'll be the movie and the Q&A coming on Saturday, which I'm feeling in line with our theme, the light has come to show the movie Powder from 1995. So that's very exciting. There's a lot of parallels with what we're teaching this weekend and what Jesus is teaching and demonstrating in us and through us. So then Sunday, Francis and I will come back and do a Q&A session, open it up for everyone. So wow, lights are popping here and it's exciting. Very exciting to have a theme that is titled, the light has come. I think you know that when you're on the spiritual journey, this is a journey of faith. It's a journey of trust. It's a journey of living and being the present moment, the I am presence that Jesus demonstrated to us and calls us into to be the demonstration of the light. So I was thinking of that theme, the light has come and that is actually the workbook lesson 75. It's the exact title, the light has come. So I thought I would just share that beautiful teaching. It comes with joy. It comes with happiness. It comes with certainty. And when you live your life in the light, then you are the living light and you share it and shine it. And everything you think and say and do. So here's what Jesus had to say in workbook lesson number 75, the light has come. The light has come. You are healed and you can heal. The light has come. You are saved and you can save.  Darkness and turmoil and death have disappeared. The light has come. Today we celebrate the happy ending to your long dream of disaster. There are no dark dreams now. The light has come. Today the time of light begins for you and everyone. It is a new era in which a new world is born. The old one has left no trace upon its passing. Today we see a different world because the light has come. Our exercises for today will be happy ones in which we offer thanks for the passing of the old and the beginning of the new. No shadows from the past remain to darken our sight and hide the world forgiveness offers us. Today we will accept the new world as what we want to see. We will be given what we desire. We will to see the light. The light has come. So wow, there it is. What a title for an online retreat. We don't do many of these online retreats. We just do them the first full weekend of each month. And we can really embrace this theme because for those of you who have done the workbook of A Course in Miracles, you know that this lesson precedes lesson number 76 which is quite famous. I am under no laws but God's. That's why we as children of God are under no laws but God's. And that's why you really have to live the experience of Christ. You have to teach it always and in all ways. You have to be it. You have to know it in your heart. And that's why a lot of times I talk about all the miracles I've experienced over these last three and a half decades because it was very much an involuntary experience of things just showing up. And things that I believed I still needed, they just showed up and they showed up and they showed up. And off I went traveling around shining the light all over the world in 44 countries but the story is not so much what the David characters seem to do or say but it was the how behind it. It was the miracles just lifting and shining and sharing through me. So I was just praying to be used and to be spoken through and to be happy and to be a demonstration of God's love. So it's beautiful when we come together for these online retreats. We have 30, maybe 50, maybe more people that join us from all over the world along with our center in Mexico centers and houses and also in Utah, rural Utah here at Living Miracles Monastery. And they all come together to be in the presence of God's love. It's an opportunity to ask questions. It's an opportunity to meet other mighty companions that are also on this deep inward journey. It's an opportunity to talk about your issues and ask for help and talk with others that are going through or have gone through the same kind of experiences. And I think of this movie that I was guided by Jesus to show on Saturday, which is the middle of the retreat, Friday, Saturday, Sunday, powder. I remember when I first saw powder, particularly the closing scene, it just brought up such a swell of love and emotion to the surface. And that closing scene is etched in my mind is a perfect reflection of the light has come and surrendering into that light. It seems like in this world, when you follow Christ, it seems at times you can feel a bit like the odd one out. You can feel like you don't fit in to this world. And Jesus is cheering us on, saying, yeah, our kingdom is not of this world. I'm calling you out of the world. And those are beautiful ideas and it's a beautiful calling, but it helps to be able to walk side by side with those who are also answering that call to be called out of the world.  The lights are flickering here. It's quite interesting. When we really open up, we start to realize that we're on a journey of intuition and listening to the guidance within and as we go deeper and deeper and deeper into that experience of the present moment, then everything seems to be taken care of. I know for me, it really seemed quite like a fairy tale. Like this is something I used to read about in the fairy tales where the main characters in the fairy tale just would kind of move from one scene to the next to the next. And things worked out always. There wasn't a lot of focus on logistics, but I find that with following the Holy Spirit, the Holy Spirit doesn't miss a thing. Everything that would be helpful is included in the guidance and there's nothing extraneous in the guidance. It's very practical, very, very helpful, very straightforward. So, as we move forward, I'm just looking forward to being there with all of you online and Francis and our whole community. And we actually, as a community, have been watching the very popular series, The Chosen. And it's season three right now. So that's another thing that we'll be doing in addition to our online retreat. We'll kind of go online together and be watching The Chosen. And I think we're up to episode five, which is called Clean Part Two. Previously, we saw Jesus had sent the apostles out two by two and to go out and heal the sick and proclaim the good news. And basically, they were a bit shocked that Jesus would just send them out so quickly after the sermon on the mount. They felt like they were just at the beginning of their training, but it really conveyed that the presence of love and the presence of healing, the presence of the Christ is something that you have to just have faith in. And Jesus was saying that this is what you need to do. You need to go forth in faith. And this is beautiful. It also highlighted two in that Chosen episode recently that there was doubt among some of the apostles and that understanding in an intellectual way is not really necessary for you to be used by Jesus and by the Holy Spirit. So that's what the faith and trust of the light has come. It comes in you as an experience of Jesus and the Holy Spirit and it comes through you and it just radiates. All you have to do is be willing to have the faith to let it come through. And for many that is no small thing because they've so much fear and doubt and pest conditioning that seems to hold them back. So we just enjoy watching these Chosen episodes and also the correlating passages from the gospels. I think this episode five that's coming up this weekend is pretty much based on Matthew eight from the New Testament. And basically Matthew one through seven is basically the Sermon on the Mount which we've already covered in this season three. That's pretty much how things started here in season three and now we're already up to episode five. So yeah, for those of you that would like to tune in this weekend, you can watch it on Facebook or on the Chosen YouTube channel or on the free Chosen app and you can just start to feel the presence of Jesus moving through you as you watch these beautiful episodes and also get to enjoy how the apostles are acting and interacting. The recent episodes that showed Simon and his wife are having some intensities in their household and the house is being used for these meetings with Jesus. So kind of like having a very seemingly private space of a home for a couple, very couple. And then suddenly you've got a lot of apostles and people coming there to meet with Jesus and to be instructed by Jesus and to be sent out to share the gospel and share the message with everyone. So that's really exciting I think. It kind of brings it to life because you can really see in the lives of the apostles and Jesus that when you say yes to God you really have to look for the taking the opportunities for healing and forgiveness because there's so many that seem to arise every day and the world would just call that the challenges and struggles of life on planet Earth but it's not that really at all when you start to realize that everything is part of a prearranged plan designed specifically for the mind to let go and forgive to let go and trust, to let the faith take over the mind and the light of heaven shine and expand in awareness until the darkness is no more. So it's quite a profound journey that we have and to go into the light, a lot of times people will say, well, I don't know about following the spirit, it seems kind of ethereal and abstract and yeah, you could say that for many that's the way it feels. Although when we come into the gospels and you see what Jesus is teaching and of course the miracles, it quickly zooms into the practical. Like here we are, listen, 75, the light has come, you can heal and you are healed and then he jumps into lesson 76, I am under no laws but God's and he starts to get very specific about the beliefs that the sleeping mind believes in and says that when you seek for things in this world that have no meaning you bind yourself to laws that make no sense and you try to seek to prove salvation is where it isn't which is basically seeing that salvation is not in money, it's not in status, it's not in possessions, it's not in things, it's not really even in interpersonal relationships, the Holy Spirit and Jesus use the interpersonal relationships to get in touch with what's going on, the emotions, the judgments, the grievances that are part of the human condition so that you can let them go. But what I always liked about lesson 76 is Jesus telling me, think of the freedom in the recognition that you are not bound by all the strange and twisted laws you have set up to save you. And then he gets specific. Now we're going from the abstract of the light has come into very, very specific. You really think that you would starve unless you have stacks of green paper strips and piles of metal disc. Yeah, he's poking funny money as a goal, as a pursuit, as a means even.  Ooh, there it goes. He's going into the medical model and saying, it's just a belief. You really think you are alone unless another body is with you. He's saying, can you realize that companionship and the desire for companionship and partnership is a belief as well. It's just a stream of thoughts that comes into your mind that you actually are following the stream as if stream is real. And he says, you call them laws and put them under different names and a long catalog of rituals that have no use and serve no purpose. You think you must obey the laws of medicine, of economics, of health. Protect the body and you will be saved. These are not laws, but madness. The body is endangered by the mind that hurts itself. The body suffers just in order that the mind will fail to see is the victim of itself. The body suffering is a mask. The mind holds up to what really suffers. So basically what Jesus is saying is, the world's a trick to try to fool you into believing into false causation, false causes in the world, false defects, and then it's a whole system. It seems to be so pervasive throughout the whole planet and the laws of the world and the cosmos that it's not questioned. And I think for myself, I started to, when I was in my late twenties, I started to question everything and started to get a bit of a hint, a bit of a nudge that there's much more than meets the eye, much more than meets the air and the five senses. So I just began praying and studying and listening and following the nudges and the prompts I was getting and that changed everything. Just opened up the whole new way of seeing a whole new world. And I know that's what everybody is really deep down praying for. They want to be happy. They just want to be joyful. They want to feel free. They want to feel lighthearted. They want to laugh and enjoy laughter, enjoy humor, enjoy being friendly, enjoy being kind, enjoy living from the heart and just being in the flow of this glorious life that God has given us in eternity. So the prayer is, let it be reflected here, oh Lord, so that I feel that I'm on the cusp of that eternal life. Let me burst in joy every day. So I'm very grateful. We don't have these online retreats very often, but if you check in this video up in the description, I put the Facebook video link and the YouTube video link and yeah, you could just type it into Google. The light has come, January 6th to 8th retreat. And I think for many people, the first time they come on, they just break the ice and they start talking a bit and then they feel more relaxed and then they start to feel the synergy of everybody in the room being lifted up together. And that's no small thing. If you're going through some challenges or trials, emotionally or what seems even physical trials, then it's good to have mighty companions to share and open up with and start to feel like you're not alone in this and that Christ is with you everywhere you go, whatever you do, you are held and carried by Christ. So thank you for this spontaneous joining today. Again, if you want to sign up, we usually have 30, 40, 50 people and then we have people to join us from our houses and centers in Mexico and here at the monastery in Utah and everybody just feels the great experience together and that's what we love. We love to experience the love of God. We love it just coursing through us and shining and extending. So thank you, thank you for joining in. Hope to see you tomorrow at the online retreat and if you've got questions, please bring them. If you have transfer of training questions like how to apply this to what I'm facing right now in the world, bring them, bring it all and then sit back and enjoy also a beautiful movie with commentary, Powder 1995 on Saturday and then a beautiful closing session with more follow-up questions and answers and live interactions with participants from all over the world. Thank you, nanny blessings.


Peanuts Peanuts, yeah, I was talking about that with my granddaughter last night What yeah me and and Ronnie and Ashley I was changing Her little pull-up diaper thing before bed because she wanted pop pop to change it and right as I pulled that off She grabbed herself and said Peanuts and we're like no, that's your brother sweetie. That's your vagina. She's a vagina.    I have a penis Who knows if what I have You can also an Instagram Twitter for more juice Thanks a page repose to the God scribe using like button today. We got a trailer. We do have a new series called hush hush Comes out. I think it's an Amazon Series comes out this makes no sense because they've not been talking about anything. They're doing in India I don't know why Amazon would have a series do That's called sarcasm and wit ladies and gentlemen They had a huge at the start of the year advertisement for all of the stuff They're doing in India, and we're well aware of it. Everything has to have a disclaimer nowadays. I Think it's starring Julie Chawa though So that's cool In that is all I know but that's it. Yeah, that's all you know. That's all I know it's called hush hush hush hush Which is what I want you to do all the time Comedy gold Here we go In the scene minute Where's the fourth musket Exactly kiss buzzard man. I'm right leg. It ain't good. I have children side. She has a husband. I have a career I come on police office in this case, but look at the Good to get them Instinct which can't be enough to see the rest of the funny bit We're having this to teach you so much may I got it? I Strut also, I just saw a rating Yeah, I did to a for adults. I guess that's a TT rating does India now have an OTT rating system Please tell me the sensors haven't gotten their hands on OTT why I heard something about them getting there I know it's trying If it's a rating system which is different from censorship right by the way for people who get confused all the time that they think America has the censorship. We do not have censorship.  It's totally fine Nobody has anything wrong with that not at all. It's when the motion picture association doesn't They'll make recommendations. Let's tell they'll tell of a production company or director if you want the PG 13 You got to get rid of this But you don't have to get rid of this. We'll just leave it as an R. So they don't touch the films No As opposed to like somebody saying you need to remove this or we won't let your film be seen Yeah, that's censorship that censorship and it is wrong So I don't know you guys can let us know I've now I just never seen the a for adult before so I don't know what what me to but cool trailer cool trailer I have said the from the makers of Jalsa, right? Yes. The one that you just came out this year with Shafali. Yeah, it looked like a similar vibe. I love it. It's well done. It's if they're setting us up for a mystery thriller Mystery crime. I also notice I'm hoping you did too and I hate that you have to say it But we're still there because we're not fully transitioned to it just being what it is But this is just led by women. This is just a ton of strong Women characters leading the charge on what looks like is a very interesting series. I'd be very interested to watch this dark like And like there's gonna be a bunch of lots of secrets. That's a secret a lot of revelations are jaw-dropping some violence in there The lies and even vigilante justice I could sense that stuff was done and they don't want certain people to know The lives of five women intersect in an unexpected way when an unforeseen event unravels the facade of their lives. So it's like The the real housewives. Yeah, it's like the Kim Kardashian sex tape. I Don't know that I Know the story behind the heart about the fact that that was not quote-unquote leaked.  Oh, yeah Yeah And I think a lot of these obviously I know Julie Chawa is a 90s star. Absolutely. I think a couple of these other ones are as well They were they were pretty big. I don't know who exactly I think somebody told me that though No t-shirt because she's the only one I've recognized Casting Doesn't say under it will under there filmmakers. It should say it under there There we go Prashant Singh Looking to see if a queen tiger is in the high tumbad. Nice Yeah, I think we yeah, I'm very interested. Yeah, I would what's Julie been up to? She been acting in 2000 miss Looks like looks like a couple films a year One or two films a year maybe a special appearance in a song here in there She executive produced a short film, so she's still been still been doing one or two things a year. Okay What about TV? Has she been working in TV? Now a couple of episodes of a show here one episode there. So no Anyways super interesting love that Amazon's kind of Especially Amazon India. I mean Amazon here is focus on Lord of the Rings and yeah, that's it It's just gonna see how that does yeah, we're they're gonna go bankrupt It's Amazon, but like I love what they're doing with a whole bunch of different styles of OTT series. Yeah, I mean to bringing in different stars. I Can you imagine? Obviously, it's it's totally different era, but in different time The mega star Jui Chawa in the 90s is now the lead in the OTT series. I love it. It's wonderful Yeah, because obviously that's it shouldn't matter and they're here in Hollywood and there's been no line between television and and TV for since cable. Yeah for a while. Yeah, and so I'm since since Well a long time. I'm sure one day you'll see Leonardo DiCaprio in a series Like yeah, you're gonna see these mega stars I think the last time it was news When someone left a TV show to go to film and it was like ah, they're gone and they'll never come back was when George Clooney left ER That's the last time. I remember it being news. Yeah, you'll go You'll do like what Steve Corral did you was in TV. He's like, I'm also gonna do movies now But he's still doing TV everybody it's cuz obviously the pay is the exact same now As is the quality it might be there might even be more because you get longer series and you get drawn out As Brian Cranston how much he made of Breaking Bad it. Oh, yeah, they were making they're still making money at that thing They were making bank. Yep. So it's one of them. Maybe one day we'll see Shahrukh Khan in a no They're loving doing it like movie stars people people who don't need to be doing it are doing it because they love it like Colin Farrell's got a new TV series Colin Farrell doesn't need to do a TV series He can just choose whatever film he wants the rest of his life But he wants to and he's exact producing it. So there's no reason why the thing I was wondering there's no difference There's no difference between like streaming TV, right? There's a difference in cable between and and there's obviously a huge difference in what you can do on network television Especially when it comes to scripted dramas. Yeah network television is still not there So you still won't see megastars probably going there usually not to network Netflix Amazon HBO obviously, but we know I was gonna say the one format that May exist, but we've learned literally nothing about when it comes to Indian artistry is the three-camera sitcom Hmm Is there one we should be watching because America has a very very long history since I love Lucy I could rattle off 20 really really famous Three-camera live audience sitcoms that y'all would know about but that's one format in the office Yeah, there's that's that's one format that I don't know of where it's like, okay in India This show was our big three-camera live Comedy I know the the big click.  I come miss Bernard you guys. Yeah, I don't know talking about it wasn't a three-camera But it was like a because based off Hindu lore mythology whatever you call. I don't know what you call you guys can tell me I don't know, but that's the only one I know Anyways, let us know what you think about this which we are next series We need to get to another one here soon. Let us know down below


The narcissist will chase you if you do this. So many people are seeking validation from the narcissist. They're trying to understand the narcissist when the narcissist doesn't understand themselves. They don't know what they're doing with their lives. Their emotions are up and down from one moment to the next but they fool you into thinking that they're greater than you where you end up doing everything for them. You take them to nice places. You try to understand them. You do everything you can to please them. To make them happy. To make their lives more convenient until they start to drift away from you. They become distant and it makes you wonder what you did wrong. It keeps you looking at yourself. When you want the narcissist to chase you instead of you chasing them. But the reality is that the narcissist doesn't care about you no matter what you do for them. No matter how much you try to make them happy. No matter how many videos you watch in an attempt to understand them. They will still drift away. Nothing you do will ever be enough. But most people keep seeking their validation. They want the narcissist to know that they care about them. But the narcissist does not care about that and they don't care about you. It means nothing to them. It's only when you cut them off and focus on something else that they then come running back to you. You have to understand that narcissists create their own problems. They create the problems in the relationship because they want you to try to fix it. They cause drama and chaos. Just to see you going through it. Just to see you try.  They know that you want to make things right. Which is why they intentionally make things difficult for you so that they can sit back and watch you try. When the narcissist tries to create problems for you ignore them. Stop chasing them. Stop giving them your attention. That is when they will chase you. They will start stalking you. They will want to know why you're not talking to them. They will do anything to get your attention. But as long as you keep chasing them they're just going to ignore you. Because they love your validation. They love watching you try to fix everything. But when you stop trying to fix things and you focus on your own life they will chase after you. Thank you for watching. I hope this video resonates with you. Please like, comment, share and subscribe. If you would like to donate my PayPal link is in the video description. Coaching inquiries. You can email me at coaching.narc-survivor.uk Thank you for watching and I'll talk to you soon.


Military working dog handlers assigned to the 901st Military Police Detachment landed at Sagami General Depot to kick off a recent field training exercise. Overall goal is to ensure that these handlers are proficient at their job, that they're the subject matter experts that can be able to go out there by themselves and be able to take charge of a situation or be able to assess and come up with a solution instead of just driving forward. I really want to ensure that these handlers without any NCO support know exactly what to do and be able to operate at that next level to be senior handlers. Their mission for this exercise was to find and apprehend a high value target while engaging in a small arms ambush. They were also evaluated on their detection capability in their ability to provide proper medical treatment in the unfortunate situation of a canine being injured on duty. For this training they used a lifelike training dummy dog for medical treatment. Handlers then carried their actual canines to the evacuation point. One of the key things that I learned yesterday was how to more utilize my partners, not just my canine partners but my spotters as well. So going out on the two man patrols we're used to kind of when we train we do things on our own with just us and our dog but having the extra element is always a great tool that we have to kind of adapt to and when things get tough put half of our workload on them so that we can split the team work evenly and it usually makes for better mission success. The second day the dog handlers worked on aggression capability training during simulated felony traffic stops. The training offered the teams the chance to react to unique and complex scenarios they could possibly face as law enforcement officers. I would say from a law enforcement perspective being able to approach a car confidently and being able to positively assess if there is something going on in the car that's not supposed to be or if everything's just day okay. You need to be able to think on the fly and adapt very quickly so I would say today's training is highlighting that. Overall it was really good. It's good to see the soldiers undertake a mission that is not what they do for their normal jobs as they're patrolling about the installation so very good to see them in their tactical role. The field training exercise gave the soldiers the chance to train on their skills in techniques. More importantly it gave them an opportunity to strengthen the bond with their four legged partners. The bond that me and my dog have he's a really young dog so he's really handler interactive he loves being near me so kind of just being able to spend time out here together and you know not have to leave him every day to go back home to my family but just to spend time out here with him he's a lot more calm he's a lot less stressed out and I can just tell that he's I get to be around dad for a whole week straight this is awesome and it definitely helped build our bond together. My dog's name is Kaya I train with Kaya every day and this was a lane yesterday that was the longest one that she's ever done it was a very long ruck and there was a lot of exciting things such as enemy combatants along the way and then going into a very dark room with a lot of scary noises and fighting bad guys is not something that we do unfortunately all the time so it was a lot for her and I think that we kind of overcame a lot of interpersonal struggles during that training mission and I think I got closer with my dog as well I think we can function better as a team. The takeaway from this training is to be able to say think outside the box don't get stuck in your day-to-day training proficiency think how I can advance and improve with my dog how can I get better how can I make something easier on just simple tasks that can lean into bigger problems that we can already negotiate that obstacle with no issues. For the US Army Garrison Japan Public Affairs Office this is Tim Flack.


The newly appointed caretaker committee of the River State or Progressive Congress says it will build and not destroy the party. The chairman of the committee, Tony Okorcha, while briefing newsmen at the party secretariat in Potacot, says the committee will personally visit party members, especially take-holders who have contributed to the growth of the party. He says the committee is open-minded and will welcome all suggestions from party members while also saying that the party under his watch would not be a one-man show. Okorcha called on all members to come together to rebuild the party. I have come here to build not a stutter, but come to build the PC, perhaps a lot more stronger than the net. I am not here to stutter, that's why I felt that if we are going to the competition, we will not even have anything to do around this, but it is tough. I have shown that it is a party, it is a party, and it is a one-party. Your ideas, your opinions, your suggestions will aid us in the development.


సి అల్లి ిర్రిలిండి చికిని వా చింరడ పిమరావా. సి ఃా, సి సి కా సి 3 వహి మా కి బ౾ చా చింరౡివానిలి. and this section we are going to take a detour from arm 7 processor go to understand the 5 stage pipeline which is being used in arm 9 families this this is to understand the 5 stage pipeline and then we will come back to arm 7 to read about its assembly instruction set and what are the features that the arm 7 supports so only for this session we are purchasing upon the 5 stage pipeline which is supported in arm 9 processor okay so with this session we will be completing the second unit of the course and from the next class onwards we will start on the arm instruction set so the focus of this session is to understand the 5 stage pipeline of arm 9 and what are the various stages of the pipeline and what are the pipeline adsorbs okay and then how is it avoided in some order solution it is called data forwarding so this will help you to understand 5 stage pipeline and understand the how it is implemented in arm okay arm 9 family was announced in 1997 because of 5 stage pipeline the arm 9 processor can run at higher clock rate than the arm 7 family so I had explained earlier that when the number of stages are increased you will have minimum work to be done at each stage which will be taking less clock number of clock stages because of which we will be able to run the processor at a higher clock rate when we increase this number of stages in the arm 9 processor so the fact that arm 9 has 5 stages number to arm 7 we will be able to run the arm 9 processor at a higher speed unit the extra stages stages that are introduced in the arm 9 processor helps the helps in its performance we will see how it helps and once we clock rate the beta clock rate of the processor has increased the peripheral and especially the memory which is going to be integrated with the processor should also be able to run at that speed so the processor and the memory should also be in a synchronization with its whole clock rate and another change from the arm 7 family is that this arm 9 processor is a hardware architecture that means it has got separate data and instruction compared to arm 7 which had a single memory and a single data which is accessing both instruction and data from the memory which was called one arm 9 architecture now arm 9 onwards the arm family followed the hardware architecture that means data and instructions are maintaining two different memory and they are access to two different processor so that an instruction access is not blocked because of a data access happening while executing instruction which is the of course load or storing section so this processor arm 9 also has a MMU support that is memory management unit support so virtual memory can be supported with the help of operating system running on the processor and the arm 9 has a separate data and instruction system so the SOC the system on tip built using arm 9 will have a data cache and instruction cache inside the tip apart from MMU so this whole thing is called a CPU which the first CPU was arm 9-20 T means it supports some more and arm 9-20 follows the has an arm 9 family processor inside with the data and instruction cache and MMU break-through okay by the now by now you know the difference between a CPU and a processor the processor is just a core arm core and the CPU is the processor so along with other sub modules which are part of the it could be a data instruction cache MMU and any co-processor that the vendor integrates with the co-processor so this is the introduction to arm 9 let us see how arm 9 by stage pipeline differs from the three stage pipeline so I have given both for you to understand how they differ the fetch mode the fetch stage of both the instruction both in arm 3 and arm 3 but when you come to the decode mode in the five stage pipeline you see that it it does the same thing like some more to decompressing it that we will not worry about it until we talk about some more it does the decoding of the instruction and here only registers connected that means it in the three stage pipeline all the control signals required for accessing the operands which are mentioned in the instruction are generated here and actually utilized in the execution stage where the operands were read finally before the operations were done and then return back into the registers so all these operations reading the operands from the register 5 and performing operation based on the instruction and the writing the result back everything was happening in this execute stage not state of the three stage pipeline in three stage pipeline whereas here what you see is the reading of operands they will move to the decode stage okay so in the second stage itself the decoding of not only decoding of the register as well reading the operands also done here so you may wonder what is the different between these two the difference is that here in the decode stage it only identifies what are the registers to be accessed it prepares the control signals for that and then it pauses on that control signals to this next stage and actual reading happens during this cycle the reading that operands from the register 5 happens during this cycle whereas here it not only generates the signals for accessing the operands it also reads those operands and makes it available to ALU so when it moves to the decode stage the operands have already been accessed from the register 5 and in this execution stage only the operation that needs to be performed by the ALU as well as the barris keeper is carried out now this is also divided into multiple stages if you remember in the earlier stage in the arms 7 family if the memory needs to be accessed suppose it was executing a load or a store instruction even computing the memory address was done here means if suppose based on the mode of the address address modes incrementing post index or index some indexing has to be done then that corresponding has to be done using the ALU and the address was generated and the memory was accessed and written into the register or it is written from the register to memory everything was happening here in one cycle okay whereas here what happens is that is split into multiple stages that means any address arithmetic is done here and actual memory access is happening here writing back the result is done here so that is for the memory access suppose if there is a data processing instruction which does not involve any memory it only does some arithmetic on the registers and then the result has to be written back into register in the case this cycle there is no work to be done but it has to wait till the right cycle right is comes to the right stage where the result can be written back into the register file so this is the kind of different operations performed at each stage and they all need to be done in synchronization in lockstep with each other and common mcroft is driving these stages and that even one stage the other stage the information that is required to be passed on is done and I will explain you how it is done internally so this class is only to make you understand what happens inside a pipeline and how it is implemented we are taking the ARM processor as an example and then we are studying here but this is the method which is being followed in any other instruction pipeline implementation tool but this kind of splitting of the function is do uniform across the processor this is in terms is very specific to the ARM also there may be some minus changes when you study about other processors so you can understand that what you under you know what is given here could be what is being followed in other risk processor also with minus changes to operations done at a different stage so let us go I hope you understand the difference between these three stages the difference between these two pipelines let me explain some more in detail so the breaking of instruction execution is done and it is broken down to five components from three so because of this the maximum of the things to be done at each stage has come so effectively we will be able to increase the process because the work of our boolean logic particularly that we are going to be having it inside a clock inside a particular stage it is not going to be introducing more delays so we will be able to complete it within a with a higher clock rate so it helps in improving the performance and increasing the clock rate of the processor this is very important that it is not sufficient if you just increase the clock rate of the process because within the particular stage if memory has to be accessed the memory should also be able to provide the information the data within that time so not only memory if suppose there are other peripherals which also run in the clock step with the processor they should all be operating at the rate the higher rate otherwise we have to have a mechanism within the processor to interface with the lower rate are the slow peripherals peripherals we can afford to do that but if a program is running from a memory and it needs to be accessed the fetch stage of the pipeline needs to be running at the same speed as the processor so the instruction memory and the data memory should all be running at the same speed as processor and as I mentioned online commonly has a separate data and instruction memory so you can either have separate memory or you can have a unified memory with a separate caches so both you know effectively improve the performance of the processor that means reducing the clocks per instruction the number of clocks that are acquired effective clocks per instruction execution will come down because of this specific play so this is what is done in the online now let us see what is that how does it come back with a typical this is so this 5 state pipeline is called a classical way of automatic pipeline so though initially was not designed for a 5 state pipeline it actually you know map into the pipeline the key difference in the online is the provision of three source operating reports and two reports if you recall arm 7 has two reports in the memory and only one report for a register 5 okay that means from the register 5 you can have two reads happening as well as one write happening in family whereas in online they increased it to one more report and one more rightful apart from what you had for address instrumenting hardware and R15 for accessing the R15 of RTC one more read and write course are there apart from that there are three reports and two write course in the register 5 in online whereas classical typical classical processors for have only two reports and one write course okay so effectively what you can see because of this is that when an execution here if you remember the 5 stage pipeline in the decode stage itself the operands are there I told you that arm 7 was accessing the operands in the execute stage whereas in online it was accessing the operands in the decode stage itself so maximum of three operands three so registers could be there you know in the same clock cycle similarly during that time R15 can also be accessed and written back suppose because this needs to be done for every instruction because every pipeline whenever there is a fetch it has to increment the R15 so there should be a process separate for so that R15 can be accessed without any intense of other source operands being read by the instruction okay let us see what are the various stages though I showed you the in the figure let us explain that in detail now fetch mode which accesses the instruction from the memory and place it in the and when that instruction moves from fetch mode to decode stage fetch stage to equal stage what happens the instruction which was accessed earlier so cycle moves to the decode stage and the new instruction gets fetched from the memory which is handled by the fetch stage now when the instruction moves in the decode stage it has to resolve you know what are the operands are being used in the instruction looking at the if you remember 4 bits were reserved for Rn and Rn and Rd that is two operand registers and the then you know destination registers so based on those values and what kind of operation needs to be performed those registers are first read and kept ready in a separate invisible program visible cycle registers okay those operands are not used in the stage it is only accessed and kept to be used in the next execution stage so this needs to be passed on to the next stage because once this instruction moves from decode stage to the execution stage the next instruction will be filling in the decode stage so now decode stage will be handling the next instruction whereas the previous instruction what it has fetched the parameter operands won't be available with the decode stage so it has to be moved to the decode stage where actual execution of the instruction happens so there should be a way of forcing the parameter it is similar to the line of paper standing and then they move items from one hand to the other so once the instruction moves from one stage to other stage the next stage could take control of that particular instruction and then takes whatever information is required from the previous stage and handles it and then passes it on to the next stage so that is the way this handling inside the hardware so in the aggregate state what happened based on the operation if barrage shipper needs to be used one operand the rm operand will be operated on and then the ALU does the job within the clock cycle if you remember non overlapping two takes clock cycle and then if it happens to be a load store it has to resolve and find out the memory address using the ALU and then if it is a load of store instruction it has to do a data memory access that means the address computer is put stage is put on the address buffer and if it was read then it will put the value also or if it is a write it will wait for the memory to provide the data which is to be written into the register means if it is a store or load based on that either both data and address will be thrown out if it was a store if it is a load it will put the data address first and then wait for the memory to provide the data and in the write back stage whatever memory gives there is a value that needs to be stored from the memory sorry it has to be loaded from the memory that will be accessed and then put into the register so writing back into the register happens in the final stage now what happens suppose you have a instruction called add r1 comma r2 comma r3 what are we trying to do here we are trying to add r2 and r3 and know that result into r1 now how is it done in the pipeline the instruction plus add instruction is the 32 bit instruction which is stored in the memory is fetched by the first stage in the decode stage it understands that it is a add operation so here it used to add operation there is no barrel shifter operation here because it is a straight away also and r3 needs to added and put into the register now all that information is available when this instruction is getting decoded but it is not known when finally the result is available and this will be written into the register so this information has to be passed on to all the stages so that when this add instruction after some 3 clock cycle when it landed lands here it will know the result is to be written into r1 so that is being passed through a intermediate programmer invisible pipeline register I will explain you but I got here if I make it clear to you later on it will become easier now add instruction it will it has understood that it has to access the parameters from r2 and r3 so it has read the parameter now r2 and r3 are already read in this state and then it passes on the values that it has read from r2 and r3 as two parameters to the ALU now what does the ALU do ALU also knows that it has to be add operation so that has come from there and then it will say that there are no barrel shifter information operation required so it does the addition and then keeps the result now it cannot write into the r1 register because it is only execution state so only in the write back it can do it now so it will run through this memory access cycle also because it is nothing to the memory so it just waits for that cycle to get over and then in the write back that r1 is written into with by the result that it got in the it will so it is passed on through different stages and then finally the result get written so this is the way pipeline works let us see with it so this is the typical instruction pipeline execution you would have seen this is interface this is the instruction fetch mode decode stage execute stage memory access calculation stage or memory access stage and then writing back the result so if you see at a particular time there are this is the suppose you assume this is the instruction at thousand this is the instruction starting at thousand four because you remember all the instructions occupied four by so if an instruction started at thousand the next instant assuming that there are more branches it is a sequential instruction that being executed by the pipeline so thousand thousand four thousand eight thousand three and you know thousand eight so this all these instructions are in different stages of the pipeline so when thousand the instruction at thousand reaches the right back so the instruction was at thousand four at this stage similarly the remaining instruction move through the pipeline and at the end of five clock cycle you will see that one instruction gets completed per cycle so you will see that every instruction coming over the pipeline if there are no other stall or any stalk in the pipeline I hope you understand the flow of the pipeline here now I told you that an instruction to get executed we have to pass on the information from one stage to the other stage because each stage when it is operating on one stage it calculates what it has done with the previous one so that needs to be passed on through a intermediate register which in the same clock cycle it gets flashed and then this does a different operation and this does an operation based on what is coming similarly the same stage here the execution stage it takes parameter it is similar to you can know in your programming paradigm it could be called as a function number functions are executed and parameters are being passed to each function so every clock this function each of the functions get executed but the parameter which it reach from is from the pipeline register so as the instruction flow in you get different parameters for every stages and they do according to it and then pass on the result back into the next stage so now assuming each of the stages takes tau 1, tau 2, tau 3 they are 5 different values 5 different values which are stored there now if we know that each stage is taking this my clock cycle or seconds or nanosecond then I told you that in a pipeline all the stages should be in lock lock that means they have to operate in synchronization means you know completely synchronized each other that means this cannot complete ahead of this or one of them cannot take more time or less time so once you know that this is the effective delay of each of the stages based on the factory and delays that you have in the logic states that is used for implementing the function you have to assume a worst case instruction execution in each of the phases and then complete those values and that should be given at the clock period for each of the stages so effectively what happens is you you take a maximum of this time delay and then make it at the clock so what happens so every stage would have completed before that maximum delay is happen so the instructions will flow without any instructions yes I know a new instruction is issued every clock cycle and on every clock cycle the results of each stage moves into the pipeline register so these pipeline registers are the invisible registers they don't have any means like R0, R1, R2 you cannot access them from your assembly program so when I say invisible means you don't even know where they exist but they are required for this instruction to be executed to the pipeline and which is used by the hardware inside and then as I told you the maximum of this delay is used at the clock period for the complete pipeline to be working in sync with each other now what is this pipeline register to they work on data and control value what do I mean by data and control value data means it is what it has understood from the interest inspection decode suppose as I told you in the example add R1, R2, R3 it it came to know that R2 and R3 are the operations to be used so it has access that operand here and then it has understood that add operation needs to be performed on this operand and there are no direct sugar operation to be performed and then the result needs to be written into R1 now in this information which is available in decode stage needs to be passed on to this write back stage so that when the result comes out from the add ALU unit it can be written into R1 so how does this stage know this instruction what will you know interested in writing the result into R1 so that needs to be passed on to the pipeline so this is the values it will say that destination register chosen was R1 so R1 will come here then when finally add result you know lands in this stage it will know that it will enter into R1 so it will write into the register now what is the control operation the operation that needs to be performed is add that is the control information to the ALU because ALU is capable of doing performing any operation whatever is program to do so that add operation needs to be passed on to this so that it will know that on the two operand values it has passed it is supposed to do a addition okay and then it will pass on the result it will also say that okay this is the value of the result that I have found from adding the R2 and R3 it does not know whether it has added from R2 or R3 it has got two values it has added and then it says this is the value I got and you are supposed to write into R1 now okay sorry this operand stage should have been performed it is execution stage the instruction decode is done and then it should have been execute stage and then you know write back and this is the memory memory execution and then write back happens here this is the address calculation okay and then write back happens here and then the value goes out okay now you see here any data value in later stages must be propagated to the pipeline which is there and then most extreme example is RD field that is what I mentioned in the R1 that has to come to the write back stage to be written into the register now the pipeline register do the job of passing on these values between stages to the other one okay now now what is the control signal the control signal is generated in the same way as in the single cycle processor which needs to go through the pipeline now take an example which what are the control signal for the the add operation or from the operation or is there any RO or any other rotate operation anything that needs to be performed has to be passed on and then what are the sources of ARU where the values are actually the action value itself is passed on okay and then in memory whether it is a reading or write and which memory access address has to be used for and it could be even CC source also and if it is a branch instance if a new address when the instruction is to be active is passed on here so it could be a source address for the program counter now what happens in the write back whether it is a register write or memory to register whether register to memory or memory to register or it is a register destination whether it is an add operation and needs to be written into R1 so at various stages it is passed on based on the instruction which was recorded in the IDP so that falls through the different stages of the pipeline so this is a way control signals are passed on for the later stages to use them so the control signals are passed on along with the values also which are required for the greater performance now we thought having more stages in the pipeline helps a lot it improves the performance the weight of the process can be improved it is not that having more stages in the pipeline is all good there are some issues associated with that which needs to be handled so they are called pipeline absorbers let us see what are they this is a what we know that disturb the smooth distribution of the pipeline something which disturb the smooth flow of instruction into the pipeline is called the pipeline absorbers let us see what they are let me give you an an example where assume it is not true with ARM 7 or 9 but assume that there is a unified cache with a single resource that means unified cache there is a both instruction and data are accessed from the same cache and it has got only single resource that means when the processor wants to access the instruction or the data assuming that they are already available in the cache now it will be reading from the cache rather than from the manual now because of the restriction or limitation that this particular cache has only in the resource it cannot read an instruction that means the data now we may wonder how when we can acquire that these two needs to be done in the same section it is possible because if you remember in a pipeline case different instructions are at the different stages of the pipeline so there may be an instruction which needs the data which is in the ID stage instruction decode stage where a point over ARM process is accessing of data or the app code so these are so accessed there I am sorry we cannot register we can say that because it is coming to the data cache it has to be accessing of memory so it is accessing some data from the memory which is in the 4 stage of the pipeline so that data needs to be accessed and during that cycle itself some other later instruction which is an instruction from the pipe on the memory so they both will be trying to access the cache at the same spot so because of that there will be a hazard so it cannot be done together so one of the things needs to be stopped and then we have to wait for the one of the needs to be done there is an instruction or data and then the next class has to be started so the pipeline bubble which I explain in the 3 stage pipeline will happen now dependence because of and hazards now what I am saying is there can be a data dependency between two instruction which may cause a hazard let us see how it can happen so in a program you have set of instructions and normally then we are operating on set of register they all be related to each other because we add two values and then the next instruction uses the result of that and then carries forward to another operation or it stores into the memory whatever it is so there will be a dependency between two instructions which are coming one after the other so this if two instructions are data dependent they cannot execute simultaneously what I mean by that is it will be clear as we go forward I will give an example and then explain you that so if two instructions that means the data instruction is waiting for the result to be available from the previous instruction that means it has to wait for the previous instruction to get completed before the next instruction can start accessing the parameter or operating so the dependency may be because of registered operand or it could be from the memory also because earlier instruction has to write some result into the memory and then that needs to be written that is why the next instruction then it has to be dependent on whichever so this kind of data dependence between instruction also can cause result now there are basically three types of working methods one is data that means an instruction may require an operand that will be the result of a proceeding still uncompleted instruction what I mean by uncompleted the previous instruction is still not written the result back into the register the write back stage is not being done so the instructions are following one after the other within a clock delay right so when the previous instruction is in the execute stage the next instruction comes in the decode stage where the operand is required but now it cannot get that operand and then the previous instruction writes the result back into the register so this is called the data result structural result there can be a same result given an example in the tenth of a unified cache it could be limitation on the register code also could cause a resource conflict because of that there will be a stall in the pipeline now one more one more I got a site called controller pad this is because if there is a dump or a branch to another address then the flow is disturbed now the program is not accessing the instructions in the sequence whereas the pipeline always accesses the instructions in the same sequence because it keeps incrementing flight 4 and then it is on accessing the instruction and put it in the pipeline now suddenly a branch instruction has come inside the pipeline and says that I need to now access instructions from some other memory now what happens the instructions so far have been accessed from the sequential address needs to be abandoned and a new instruction has to be accessed from the new location so because of that there will be pipeline as well so when I say pipeline as well it actually introduces some bubbles in the pipeline it is not that it is blowing up the pipeline but actually it introduces some delays that means the pipeline cannot give you a throughput of no file instruction for clock in an ideal case in a file stage pipeline you need to get a file instruction get completed in every clock but what happened is effectively you should get one instruction coming out of every clock that will not happen so it will get delayed so common solution is to start the pipeline now there are some hardware features supported by your processors to avoid these bubbles in the pipeline for example now true data dependency is there one instruction from the final outcome of the previous instruction this is called flow dependency or write rate dependency that means the previous instruction has to write the result into a register and the next instruction is supposed to read from the register so until the previous instruction write the next instruction cannot read from the result from the register that is called a flow dependency take an example here now add r1, r2, r3 what does it mean r1 is equal to r2 plus r3 now what is this move that okay it should have been sub or any other operation arithmetic operation actually I am showing it as a add r2 things as r1 this should have been add so add r4, r5 suppose 2 add instruction from one after the other now what happens is this operant which is required for this add instruction we did that add has to come from this so until this addition is done and the result is written back into r1 this cannot proceed forward so this is called a true data dependency second instruction can be fetched this add instruction can be fetched but it cannot proceed forward until this previous add is complete okay so this is called a true data dependency now take an example of add and a null instance it is a typical I am not talking about a particular any particular processor or anything we assume that there are two instructions which are add and null written by this instruction for this to take a value from r2 and then do the operation now what happens is as per our decode status instruction decode is reading the operant also in this stage so effectively in this setting itself this instruction needs r2 to be available but this go back okay the execution is done for the add it has completed the value but still it has not written back that value into r2 because it is going to it has to wait till the write back then r2 will be written so if suppose this instruction tries to read whatever is the value of r2 in this class it will be the old value it won't get the latest value which is supposed to be coming from the write back stage of this so because of this this instruction cannot proceed forward so there will be some out of the directory in the pipeline to designize that there is a dependency in the register operant values so it will stall this instruction it won't proceed further it won't be executed like this it will be stall till this talk is done and then after this writing back it will be done it will be reading this and then it will proceed further it needs to support some way of passing on this value to not appropriate stage so that this pipeline this instruction can proceed further without any delay let us see how it is handled in the proper way this is another example there a store instruction if you remember store is something to do with the memory now what is it doing it is loading the value into r7 and r1 r2 needs to be accessed and then that operant needs to be taken for error now if r1 r2 needs to be accessed using the actually this is a load it will be loading the values from memory to register it needs to be load register and then these parameters have to be read by the adding instruction so this won't be ready until the register values are accessed in the memory so because of that there is a delay here and in this case r3 is written into by add and then that is being used by this instruction now so this is also the dependent on this value so because of this dependencies need to be avoided or it should be this instruction should be stored for this to operate properly okay now how is it handled this is handled by the data power I will tell you what is done take an example here add instruction takes the values of r1 r2 here and it executes the addition and the result is available now but what I told you is through the pipeline register these values are passed on from one stage to the other stage and finally it gets written into r2 in this stage and then r2 needs to be accessed here now it supports hardware stuff the processor supports the way of forwarding the result ahead of writing into the register file because you know that after this execution is done within this clock cycle you have the result available out of ARU now if there is a way this output ARU can be given to this stage so that you know this value is copied from the register file and then kept in the pipeline register for the next stage to consume so if this value can be substituted before they write it up you know given to this stage actually there is no need of introducing value okay this concept is called forwarding this is different from the pipeline register which pass on the information from one stage to the other stage that is the usual flow of information from one stage to the other apart from that between two stages between two instruction flow there is a information flow happening across them based on the type of offering which are used by a different instruction this is called data forwarding that means once the data is available we know that at this stage the addition is performed only thing is it has to wait for two clock cycles to be written into the register file for this instruction to accept so you may have a delay of two clock cycles instead of doing that if the hardware can designate there is a dependency between the you know this instruction and this instruction and it is actually waiting for the result of this instruction if it could be passed on but from this stage to there the next instruction which is in the previous stage then this instruction can proceed without any delay so is the correctness of the program issue of course yes because between this the value what it has got is correct anything is it gets returned into the register later that does not matter because you have got the correct value for this addition to be performed so effectively the program correctness is assured and there are no bubbles introduced in the pipeline because of which the performance and the effectiveness of the pipeline is better here so but it needs an additional strategy and additional load of course from the hardware which is supported in ARM so on ARM 9 also support this data function if I show you the when we see the data flow of the ARM 9 in the data function now as well in DRM section so R1 to R2 load we are doing a loading of the value which is pointed by R1 from the memory into R2 register and which is required added add operation now recall when actually the memory gets activated it gets the computation of result happens here for the load here it is a simple shape where there is no indexing or anything but typically one cycle is used for computing the this cycle is used for computing the address and this cycle is used for accessing the memory now what happens in the end of memory cycle only the value is available but it is still not written into the register file which happens only here but at least the value will be available here so in case if you want this instruction to be run without any delay it is not possible because when this this is all same clock set we need parameters here for this add to proceed to the next stage but we do not have the value because it is only address is completed here and we do not know what is stored in the file so we have to introduce one bubble here and the data perverting is there if this value would have come into the processor from the memory in this clock that can be fed to this id stage and it can proceed so with the one bubble when you are introducing one bubble this instruction can proceed but it cannot proceed without any delay we cannot feed anything from here because earlier when we saw as the research was available so the parameters could be often could have been forced onto the next instruction whereas here we are accessing it from the memory which is not available in this cycle it will be available only at the end of this cycle and it will be written into the R2 in this cycle so we have to wait for a cycle at least to get the value by forwarding this value into this in the procedure instruction so we have to show here is that is not where forwarding can solve all the problems it can solve some problems where the operands are coming from the register but if it has to come from memory it has to wait for one bubble now another example so by introducing this bubble we are trying to get that value same example here with the solution so we are accessing the value from the memory state data forwarding is L2 here but if data forwarding was not supported then we have to wait for the write back to happen and then read the same value from the register so even you have to do this one more cycle but here anyway it is only one bubble disk okay now just what all needs to be as a assembly programmer you may be writing a code for arm 7 which we quoted on to arm 9 there are some subtle differences between these two because of the differences in which the way the operands are being fetched in the 3 stage and 5 stage data now assuming that instruction 2 is a data dependent on a load instruction which I have shown you previously LDR instruction 1 then instruction 2 has to be stored atleast have to go memory state okay even when forwarding is implemented from memory block to index data that can have to be removed the only way to avoid this is to enter a compiler okay how do you avoid this if suppose a compiler is aware because it is it knows what are the instruction whether is there any dependency between this so it can introduce another instruction without disturbing the flow without disturbing the correctness of the program it can put the instruction which depends on the previous many LDR instruction if it can put some other instruction which can be executed without any dependency then it can avoid so that needs to be done by the compiler by introducing some instruction which is not dependent on each other now because this problem does not happen because computing the address as well as accessing the parameter value and writing into the register all happening in the easy good state so the next instruction coming in will be able to get the parameter very easily because it is only reading the parameter only in the last week so 3 stage pipeline does not have this kind of dependency the 5 stage only has the dependency in the 2nd stage itself whereas in the 3 stage reading the operand and writing the result back everything is happening in the 3rd stage that is the easy good stage so there won't be any dependency between operand being available for the next instruction to proceed so this is only specific to the 5 stage okay now let us see how it is implemented in the 5 stage so you understood what all the pipeline registers and then data for reading you will be in a position to understand the whole diagram okay now it is little more different than what you are seeing for the ARM 7 processor you have an instruction patch within the processor and the instruction flow through this and you see that there is the address incrementer which is now specifically incrementing the value by 4 and then writing that why is the address going to instruction cache because if the instruction is available in the cache it will be read from here or it will go to the memory and then through cache the instruction come into the processor now after this this is the first stage now whatever you see the grey one they are called instruction they are all pipeline registers which I showed you in between the stages you can pass on the data as well as control information from one stage to the other stage these are the registers which are immediately applicable to the programmer but they do a very important job of passing on the information between different stages now if you have noticed but within the 3 stage in the 5 stage pipeline the PC if you remember the 3 stage pipeline first there was a there is a fetch and then there is a decode and then execute if you remember I told you that when a particular instruction gets executed in the third stage that then the PC value is PC plus 12 that means it is accessing the next instruction but one because in during the first stage PC is and the third second stage it will be PC plus 4 and when it comes to third stage it will be PC plus 8 now that is the way PC is incrementing so PC plus 4 and 8 plus 8 is the insert of PC value when an instruction is getting executed in the current execution stage whereas if suppose an instruction in the 5 stage pipeline the PC value it is going to see PC plus 4 because here the upward access is happening immediately after the fetch thing it is not happening after the third stage okay during the 3 stage pipeline during the third stage only the PC is suppose any instruction is having a dependency on the PC value it will be accessing it from the register 5 so what the ARM processor family have done is suppose to keep the similarity between an ARM 7 and ARM 9 family though really the PC is only incremented by 4 they is incremented by another 4 and then write into R 15 so that the program original program which was written for ARM 7 so that is why you see that though the PC is plus 4 it is incremented by another 4 and written into R 15 so when this instruction comes into this suppose you have written a code for ARM 7 and you are running it on ARM 9 you will be assuming that or the assembler would have assumed that R 15 is incremented to plus 5 so to get the same feel of the value that it expects to have in R 15 the PC is incremented by one more 4 and then is written into R 15 so that is why you see this here and then the rest of the thing is happening the same way immediate value is also passed on in case it has to be shifted across to ARU and then based on the load or store you get the arithmetic pre-index or post-index this will be understanding in little more detail when you are talking about addressing mode but this address computation is happening here because I told you in the execution stage address computation also happens if it is a load or store and then actual access of the load or store happens during the mem cycle and then writing that value back into the register happens in the right back state so if it was a typical ALU operation it comes here the ALU value is computed and then it is passed on through the pipeline register to the register write and then it is written back into this register so this is the way the process pattern now I showed you that there is a forwarding that means whatever value you get during the execution stage you feed it back into the instruction that means if you do not wait for the results to be available only operating the register it is taken out from here and in the next clock cycle if there is a dependency on this data for the previous next instruction when the next instruction enters this data is available so whatever I showed you from the execute stage to the decode stage there is an operand moving and this forwarding happens so that you get the values to the forwarding register so this is all about pipeline now what is the pc behavior I will explain to you with a diagram so in the 3 stage pipeline the pc was different it was pc plus 8 in the 3 stage whereas in 5 stage it is only pc plus 4 when the operands are read in the 5 stage pipeline because of this ARM has added to emulate the ARM's behavior it is adding the pc value to 8 and then feeding it the implemented pc value from the 3 stage is fed directly to the register in the decode stage bypassing the pipeline because pipeline register only the pc plus 4 but we want pc plus 8 to be in sync with the earlier code so the pc plus 8 is passed on so that when the instruction is accessing the architecture it will get the correct value what it assumes to have in the architecture which is pc plus 8 as per the 7th family of processor so this is the little difference in the behavior of 5 stage pipeline which is handled by ARM now what is the pipeline paradox do you think that pipeline actually makes the instruction to run faster actually not actually having more stages it is taking a longer time for the execution to complete one typical example is I told you that because of the 5 stage pipeline even for an add or a very unknown data processing instruction it does not involve any memory has to wait 1 clock cycle to write back the result that means we are introducing 1 clock of 1 delay 1 cycle delay we are introducing because of the 5 stage so it is in fact increasing the execution time but how do we get the better performance because it increases the throughput you get to see 5 instructions now every clock cycle 1 instruction comes out from the pipeline that is k times 5 times faster performance you get when you switch that operation into multiple stages and then execute them so you get a throughput improvement but we are not executing the instruction faster than the normal execution processor so what is the ARM processor and the pipelining how this ISA of ARM supports pipelining effectively because all instructions are 32 bit long and fetching them is easier and decoding them is easier because the operands fields are in a physical location so decoding is simpler and then we have a register to register architecture the AIU arithmetic operation in the execute stage can be completed in one cycle including the barrel shifter operation so there is no delay because of memory because we have removed all the data processing instructions using memory as another operand so only all the data processing instructions used will be registered for the operand so there is no delay because of memory whereas this processor data processing instructions also to have memory operand that is directly accessing the operands from memory because of which there will be a delay and this processor also have variable length instruction length instructions because of which the decoding logic is complex so if you remember that tau value of how much time it takes for a particular stage to complete will be more because of this you have to give the same time for all the stages so your pipeline also becomes slower the whole pipeline becomes slower slower is one of the stages in the pipeline takes more time so because of this implementing a by stage or a more stages in the pipeline is easier for this so this is the you know how an instruction that architecture affects the pipelining and what is the relationship why is this easier for implementing a pipelining in this processor that is what I am trying to explain here okay so we have come to an end of this class where we understood what is the 5 stage pipeline and the various stages of the pipeline and then how the 5 stage pipeline is organized internally in the arms and how the data forwarding from the different stages type in completing the instruction which was the more process into the pipeline so we understood also what are the pipeline numbers and how it is solved using the hardware so thank you very much for your attention and this brings down the end of our unique tool and we will be starting with instruction set of arm 7 from the next session thank you very much for your attention