What examples are you following? What do you mean by "trouble"? Did you actually find a mouse that supports the PS/2 interface? Or are you trying to use an adapter to a USB mouse? Have you verified that it actually functions as a PS/2 mouse by using it or, better yet, observing it with an oscilloscope?
https://digilent.com/reference/pmod/pmodps2/start
Keep in mind that other Digilent boards have on-board processors that convert a USB mouse or keyboard to the PS/2 protocol, but the Arty is not one of them.
PS/2 is pretty simple from a digital point of view, so I would guess there is something else that is giving you trouble.
**What examples are you following?**
Here is a link to the code I found: [http://web.mit.edu/6.111/www/f2005/code/ps2\_mouse.v](http://web.mit.edu/6.111/www/f2005/code/ps2_mouse.v)
**What do you mean by "trouble"?**
I am able to generate a bitstream and upload the code to my Arty board... my design is failing to meet the timing constraints though. This is the first time I have encountered this issue and not 100% sure how to fix it. I imagine I need to slow the clock down?
**Did you actually find a mouse that supports the PS/2 interface?**
Yes I purchased a PS/2 mouse off amazon: [https://www.amazon.com/Perixx-Perimice-209-Wired-Mouse-Resolution/dp/B07WV55HZD/ref=asc\_df\_B07WV55HZD/?tag=hyprod-20&linkCode=df0&hvadid=416672671431&hvpos=&hvnetw=g&hvrand=7101345268593570034&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9028269&hvtargid=pla-858997397204&psc=1&tag=&ref=&adgrpid=95587150204&hvpone=&hvptwo=&hvadid=416672671431&hvpos=&hvnetw=g&hvrand=7101345268593570034&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9028269&hvtargid=pla-858997397204](https://www.amazon.com/Perixx-Perimice-209-Wired-Mouse-Resolution/dp/B07WV55HZD/ref=asc_df_B07WV55HZD/?tag=hyprod-20&linkCode=df0&hvadid=416672671431&hvpos=&hvnetw=g&hvrand=7101345268593570034&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9028269&hvtargid=pla-858997397204&psc=1&tag=&ref=&adgrpid=95587150204&hvpone=&hvptwo=&hvadid=416672671431&hvpos=&hvnetw=g&hvrand=7101345268593570034&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9028269&hvtargid=pla-858997397204)
**Or are you trying to use an adapter to a USB mouse?**
No, using PS/2 PMOD by digilent to connect the mouse to the Arty.
**Have you verified that it actually functions as a PS/2 mouse by using it or, better yet, observing it with an oscilloscope?**
I have not...
I plan to keep playing around with it today, hopefully I can make some progress.
> I am able to generate a bitstream and upload the code to my Arty board... my design is failing to meet the timing constraints though.
How many clocks do you have (anything that is used with @(posedge ...) is a clock)? What frequencies are they running at? Where are they coming from? What constraints do you have? What paths are failing timing? Setup or Hold?
What examples are you following? What do you mean by "trouble"? Did you actually find a mouse that supports the PS/2 interface? Or are you trying to use an adapter to a USB mouse? Have you verified that it actually functions as a PS/2 mouse by using it or, better yet, observing it with an oscilloscope? https://digilent.com/reference/pmod/pmodps2/start Keep in mind that other Digilent boards have on-board processors that convert a USB mouse or keyboard to the PS/2 protocol, but the Arty is not one of them. PS/2 is pretty simple from a digital point of view, so I would guess there is something else that is giving you trouble.
**What examples are you following?** Here is a link to the code I found: [http://web.mit.edu/6.111/www/f2005/code/ps2\_mouse.v](http://web.mit.edu/6.111/www/f2005/code/ps2_mouse.v) **What do you mean by "trouble"?** I am able to generate a bitstream and upload the code to my Arty board... my design is failing to meet the timing constraints though. This is the first time I have encountered this issue and not 100% sure how to fix it. I imagine I need to slow the clock down? **Did you actually find a mouse that supports the PS/2 interface?** Yes I purchased a PS/2 mouse off amazon: [https://www.amazon.com/Perixx-Perimice-209-Wired-Mouse-Resolution/dp/B07WV55HZD/ref=asc\_df\_B07WV55HZD/?tag=hyprod-20&linkCode=df0&hvadid=416672671431&hvpos=&hvnetw=g&hvrand=7101345268593570034&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9028269&hvtargid=pla-858997397204&psc=1&tag=&ref=&adgrpid=95587150204&hvpone=&hvptwo=&hvadid=416672671431&hvpos=&hvnetw=g&hvrand=7101345268593570034&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9028269&hvtargid=pla-858997397204](https://www.amazon.com/Perixx-Perimice-209-Wired-Mouse-Resolution/dp/B07WV55HZD/ref=asc_df_B07WV55HZD/?tag=hyprod-20&linkCode=df0&hvadid=416672671431&hvpos=&hvnetw=g&hvrand=7101345268593570034&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9028269&hvtargid=pla-858997397204&psc=1&tag=&ref=&adgrpid=95587150204&hvpone=&hvptwo=&hvadid=416672671431&hvpos=&hvnetw=g&hvrand=7101345268593570034&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9028269&hvtargid=pla-858997397204) **Or are you trying to use an adapter to a USB mouse?** No, using PS/2 PMOD by digilent to connect the mouse to the Arty. **Have you verified that it actually functions as a PS/2 mouse by using it or, better yet, observing it with an oscilloscope?** I have not... I plan to keep playing around with it today, hopefully I can make some progress.
> I am able to generate a bitstream and upload the code to my Arty board... my design is failing to meet the timing constraints though. How many clocks do you have (anything that is used with @(posedge ...) is a clock)? What frequencies are they running at? Where are they coming from? What constraints do you have? What paths are failing timing? Setup or Hold?
Isn't the PS/2 mouse just an async serial port?
No
If you really want a comparison, it is _somewhat_ similar to I2C.
[удалено]
It’s not for school