Varias cosas que comentar:
¿Qué tensión tienen las puertas lógicas? Imagino que serán 5V
Los transistores mosfet-n hacen la transición cerca de los 4 voltios. Se puede ver en la Figura 1 de la página 3.
Esto permite encenderles con niveles lógicos de 5V, pero tiene muy poco margen. Esto provocará que las transiciones sean más lentas. Lo mejor es comprar transistores que cambien con 2v.
Los mosfet-p necesitan 7 voltios en puerta para conmutar 10 Amperios. No son level logic y solo aguantan 10 Amperios, menos que los mosfet-n. No hay problema si alimentas el puente con tensiones mayores de 7 voltios y corrientes menores de 10A.
La resistencia de los mosfet-P es demasiado pequeña (10 Ohmios) pon mejor una de 330 Ohmios.
Si vas a alimentar el puente a 24V, es mejor añadir otra resistencia de 330 Ohm entre el colector del NPN y la puerta del mosfet P. Es para que no se queme la puerta del mosfet ni las resistencias (que deben ser como mínimo de 0.5W).
Añade un condensador de 220pF en paralelo con las resistencias R1 y R4 para acelerar el apagado de los transistores.
La lógica de las puertas no es correcta. En esta página tienes un ejemplo de como hacerlo:
http://axotron.se/index_en.php?page=34Para empezar también puedes quitar todas las puertas lógicas, conectar las cuatro señales directamente a un microcontrolador y hacerlo todo por programación (con cuidado de no activar a la vez el lado alto y el lado bajo).
Ese circuito suele tener diferentes velocidades de encendido y de apagado tanto en el mosfet-p como en el mosfet-n. Esto provoca cortocircuitos durante las transiciones de encendido a apagado de los transistores y puede quemarles. Se debe evitar con un pequeño tiempo de varios nanosegundos que se denomina deadtime.
En tu circuito lo más lento será el apagado del mosfet-p que puede tardar 500ns más que el encendido del mosfet-n de abajo.