# Modeling concurrency

**URL:** https://discourse.julialang.org/t/modeling-concurrency/3172
**Category:** Modelling & Simulations
**Created:** [April 11, 2017, 3:50pm UTC](https://discourse.julialang.org/t/modeling-concurrency/3172 "2017-04-11T15:50:50Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![bo-lo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bo-lo/32/3317_2.png) [@bo-lo](https://discourse.julialang.org/u/bo-lo)
#### Post date: [April 11, 2017, 3:50pm UTC](https://discourse.julialang.org/t/modeling-concurrency/3172/1 "2017-04-11T15:50:50Z")

</div>

Hi

I am just starting with Julia and would like to model concurrency as in digital circuits. A trivial example would be to model a 3 bit counter and see its output in a waveform viewer.

A more evolved example would be to use the MSB of the 3 bit counter above to enable a slower 2 bit counter.

How do I go about this?

Maybe some thing akin to python generators which hold their state and return values at clock edges? This brings up the topic of defining clocks. How do we do that?

thanks!

---

<div class="post-metadata">

### Author: ![mkborregaard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkborregaard/32/556_2.png) [@mkborregaard](https://discourse.julialang.org/u/mkborregaard)
#### Post date: [April 12, 2017, 6:00am UTC](https://discourse.julialang.org/t/modeling-concurrency/3172/2 "2017-04-12T06:00:29Z")

</div>

Maybe SimJulia.jl has what you need?

---

<div class="post-metadata">

### Author: ![bo-lo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bo-lo/32/3317_2.png) [@bo-lo](https://discourse.julialang.org/u/bo-lo)
#### Post date: [April 12, 2017, 1:07pm UTC](https://discourse.julialang.org/t/modeling-concurrency/3172/3 "2017-04-12T13:07:54Z")

</div>

Thanks! I will check it out.
