Hi, a few things to try if you haven't already:
-Do a repair install of the game in Origin. In origin right click your game and from drop down choose repair install.
-make sure that you've updated your drivers to latest version.
If its Nvidia then go to the Nvidia website and download the latest graphics driver. http://www.nvidia.com/Download/Find.aspx?lang=en-us
If AMD then go to its website and do the same. http://support.amd.com/en-us/download
Choose a 'clean install' (usually in the advanced install options)
If the problem only began after updating your graphics driver then try reverting to a previous driver (again choosing 'clean install)
If using Mantle drivers on AMD and crashing in X64 version then -Go to C:\Users\Administrator\Documents\Battlefield 4\settings and delete the file "PROFSAVE_profile" (or you could just move it somewhere else on your PC for safekeeping).This will also reset keybindings and graphics settings so you will need to do them again when you launch the game.
-Reinstall Punkbuster.
Go to C:\Program Files (x86)\Origin Games\Battlefield 4 and select pbsv.exe . Choose 'reinstall'
Install advice for Punkbuster https://help.ea.com/uk/article/punkbuster-technical-issues
-Try forwarding your ports:
Solution from eabarry http://answers.ea.com/t5/Battlefield-4/PC-BF4-quot-Error-Game-disconnected-could-not-join-server-quot/td-p/1940619/page/7
For Battlefield on PC, please enable the following online ports on your connection:
TCP: 80, 443, 9988, 20000-20100, 22990, 17502, 42127
UDP: 3659, 14000-14016, 22990-23006, 25200-25300
For specific instructions on how to open your ports, please visit http://www.portforward.com/ or contact your router manufacturer.
Also see this EA Help article for information on opening TCP or UDP ports: http://help.ea.com/en/article/opening-tcp-or-udp-ports-for-connection-issues/